2012-05-01 19 views
9

などValaとGenie製作は準備ができていますか?私はリファクタリングと一般スパゲッティタイプのプログラミングを削除するには、クリーンアップ、DRY原則を遵守する必要があるいくつかのレガシーCコードで働いています

私はC++を使用して書き換えを考えていたが、私はしないでくださいこれまでのところ行きたいと思っていて、可能な限りCの近くにいたいと思っています(OOPの概念を使用していますが)。

私は最近、GObject、Vala and Genieに出会った。後者の2つはかなり最近です。 ValaやGenieのどちらかを知っている人はいませんか?

最後に、少なくとも2つの言語間の長所と短所の比較のリストがあります。私はPythonが大好きで、C#にも熱心ではないので、Genieに少し傾いていますが、Genieの(タブの見かけ上の)主張は実際には迷惑になるかもしれません - 私は賛否両論のリストに興味があります2つの言語(どちらか一方または両方が実稼働環境で使用可能であると仮定)。

私はLinux上で開発していますので、Windows関連の問題は私の関心事ではありません。

+0

また、[客観C](HTTPを検討する必要があります。 org/wiki/Objective_c)、[D](http://en.wikipedia.org/wiki/D_%28programming_language%29)、おそらく[他の言語の束](http://en.wikipedia.org/ wiki/Object-oriented_programming#OOP_languages)は、 "C with objects"と同様です。 – pmg

答えて

10

Unityは、Ubuntuの最近のすべてのバージョンで使用されているユーザーインターフェイスで、Valaを使用しています。

Here is a listのValaを使用して開発されたアプリケーションです。これらのうちのいくつかは、いくつかの主要なGNU/LinuxディストリビューションのデフォルトGUIインストールの一部です。

Genie:Valaコンパイラが理解できる別の言語(Pythonのような構文)です。だから、それは本当にあなたが好む構文の問題です(私の意見では)。ここでは同じことを言っているようだ魔神言語ガイドからの引用です:魔神は

を機能的にValaのに非常に似ていますが、開発者は を達成するためにクリーンでより少ないコードを使用することができるように構文 が異なります同じ仕事。ヴァラ、ジニー同様

同じ利点を有する:ジニーに書き込ま

  • プログラムはヴァラに直接書かれたものと同様のパフォーマンスおよびリソース使用率を有しているべきであり、C
  • ジニーが膨張及びオーバーヘッドのいずれを有していませんGenieのクラスは、実際にはGObjectsなので、ウィジェットやライブラリのようなプラットフォームコードを作成するために使用することができます(GObjectsは がバインディングに必要です)。他にR言語

あなたがTAB文字が気に入らない場合は、代わりにスペースを使用することができます。//en.wikipedia:

[indent=2] //two space indent instead of TAB 
init 
    print "Hello World" 
+1

ありがとうございます。私はバラと一緒に行くと思う。それはまだ開発中です(Genieへの最後のコード変更は数年前に行われたようです)。 –

+1

"ValieとCの*直接*書かれたものにGenieで書かれたプログラム"という言葉がいくらか伝えられています。Genieを使用してどのレベルのインダイレクションが導入されていますか?私はVala/Genieがバイナリにコンパイルする前に最初にCにコンパイルすることを理解していますが、その文はGenieで書かれたプログラムが最初にValaにコンパイルされてからC、そしてバイナリにコンパイルされるように見えます。または、間にスワヒリ語かもしれません。何も思いつきません。 – robru

+0

私はUnityのソースコードをチェックアウトし、そこにはcpp、c、py拡張子しか見ることができません。 – exebook

関連する問題