2

私は、主に Linux デスクトップで使用される、新しい小さなカスタム固有の CRM (カスタマー リレーションシップ マネージャー) を開発するように依頼されました (Windows および Mac OS X との互換性は高く評価されますが、必須ではありません)。

これは、新しい Vala 言語とそのライブラリのいくつか (特に libgda と Gnome-DB の残りの部分) を試す良い機会だと思われますが、もちろん、動作する製品を顧客に間に合わせて提供する必要があります。 .. 私はまだ頭をかいて疑問に思っています。

このアプリケーションを開発するには、次のものが必要です。

  1. 「接着」言語 (Vala 自体)。これで結構です。

  2. GUI ライブラリ (GKT+ 2.X または 3.X)。これで結構です。

  3. データベース抽象化レイヤー (libgda)。ここで私は疑問に思うことがあります。

  4. おそらく、Bakery のような MVC フレームワーク (Bakery 2.6 は GTKmm 2.4 でのみ動作するようです。私が見る限り、GObject 対応の GTKmm 3 では動作しません)。

  5. Hiberlite のような ORM かもしれません (libgda はデータ認識ウィジェットやその他のツールを提供しますが、私が知る限り、本格的な ORM ではありません)。

現時点で自信があるのは最初の2項目だけです。libgda の Vala サポートの実際の量でさえ、私にはあまり明確ではありません (ValaDoc は、LibGDA の古いバージョンのインターフェースをサポートしていると説明していますが、Gnome-DB Web サイトでは、ライブラリの新しい 4.2 および 5.X バージョンは GObject であると述べています- および Vala- が有効)。最も可能性が高いのは、Bakery と Hiberlite がすぐに Vala に提供されなくなることです。

最も近い代替案は次のようです。

  1. C++

  2. GTKmm (2.X)

  3. たぶんベーカリー2.6

  4. libgda

  5. 多分ハイバーライト

より成熟したスタックですが…運命にあるほど成熟しているかもしれません。

したがって、このような新しいデータベース中心のプロジェクトで Vala を試してみませんか? それとも、より成熟した、より豊かな Vala エコシステムを待ちますか?

ありがとう

4

1 に答える 1

0

Vala は、気にするフレームワーク (およびバージョン) を必要としないネイティブ コンパイルを意味します。データベースへの接続はまだ時期尚早であり、明らかに文書化されていないように見えます (それが私がこの投稿にたどり着いた方法です)。その上、IDE はありません。Glade は実際には IDE ではなく、インターフェイス デザイナーです。

Lazarus を試してみると、データベースのフロントエンドがいかに便利に開発できるかに驚かれることでしょう。かなり成熟したネイティブ コンパイル、すぐに使用できるサード パーティ コンポーネント、IDE によるデータベース サポート、Gtk または Qt の使用オプション。

また、Windows、Linux、および Mac でネイティブ exe を提供します。クロスプラットフォームのデータベース フロント エンドを開発している場合、遠く離れたところにあるものは何もありません。開発時間は、C と同等ではないにしても、C に匹敵するわずかな時間とパフォーマンスになります。

于 2011-12-16T17:09:19.960 に答える