私は、主に Linux デスクトップで使用される、新しい小さなカスタム固有の CRM (カスタマー リレーションシップ マネージャー) を開発するように依頼されました (Windows および Mac OS X との互換性は高く評価されますが、必須ではありません)。
これは、新しい Vala 言語とそのライブラリのいくつか (特に libgda と Gnome-DB の残りの部分) を試す良い機会だと思われますが、もちろん、動作する製品を顧客に間に合わせて提供する必要があります。 .. 私はまだ頭をかいて疑問に思っています。
このアプリケーションを開発するには、次のものが必要です。
「接着」言語 (Vala 自体)。これで結構です。
GUI ライブラリ (GKT+ 2.X または 3.X)。これで結構です。
データベース抽象化レイヤー (libgda)。ここで私は疑問に思うことがあります。
おそらく、Bakery のような MVC フレームワーク (Bakery 2.6 は GTKmm 2.4 でのみ動作するようです。私が見る限り、GObject 対応の GTKmm 3 では動作しません)。
Hiberlite のような ORM かもしれません (libgda はデータ認識ウィジェットやその他のツールを提供しますが、私が知る限り、本格的な ORM ではありません)。
現時点で自信があるのは最初の2項目だけです。libgda の Vala サポートの実際の量でさえ、私にはあまり明確ではありません (ValaDoc は、LibGDA の古いバージョンのインターフェースをサポートしていると説明していますが、Gnome-DB Web サイトでは、ライブラリの新しい 4.2 および 5.X バージョンは GObject であると述べています- および Vala- が有効)。最も可能性が高いのは、Bakery と Hiberlite がすぐに Vala に提供されなくなることです。
最も近い代替案は次のようです。
C++
GTKmm (2.X)
たぶんベーカリー2.6
libgda
多分ハイバーライト
より成熟したスタックですが…運命にあるほど成熟しているかもしれません。
したがって、このような新しいデータベース中心のプロジェクトで Vala を試してみませんか? それとも、より成熟した、より豊かな Vala エコシステムを待ちますか?
ありがとう