22


1

私はクロスプラットフォームになりたいGUIベースのツールを作成することを検討しています。 私は個人的にはSwingが好きではないので、私はJavaを却下しました。 私は現在C#を検討しており、クロスプラットフォームにするためにMonoを使用しています。 しかし、Rubyのような新しいクロスプラットフォームの言語が、私にはまともなGUI開発環境を提供できるかどうか疑問に思います。

14 Answer


36


*短い答え:*いいえ(あなたが_cross-platform_と言ったからです)。

*長い答え:*クロスプラットフォームのGUIは古くからある問題です。 Qt、GTK、wxWindows、Java AWT、Java Swing、XUL - これらはすべて同じ問題を抱えています。結果として得られるGUIはすべてのプラットフォームでネイティブに見えるわけではありません。 さらに悪いことに、すべてのプラットフォームの外観は*と*が少し異なります。したがって、すべてのプラットフォームでネイティブに見えるツールキットを入手できたとしても、どうにかして各プラットフォームでネイティブにコードをコーディングする必要があります。

それは決断の結果になります。開発の労力を最小限に抑えて、各プラットフォームで見た目がよくないGUIを使用したいのか、それともユーザーエクスペリエンスを最大限にしたいのか? 2番目のオプションを選択した場合は、各プラットフォームに共通のバックエンドとカスタムUIを開発する必要があります。

ルビーはあなたの一般的なバックエンドにとって悪い選択ではありません。


8


Rubyは Shoesを持っていますが、それは少し軽量かもしれません。


8


http://ruby-gnome2.sourceforge.jp/[Ruby/GTK]があるでしょう。これはあなたがlinuxの下でGTKツールキットを使うことを可能にします。 私はそれがWindowsとMac OS(Gimp、Gaimなどに関して)で動くべきであると思います。
http://www.unixgarden.com/index.php/programmation/ruby-gtk-le-developpement-d%E2%80%99applications-de-bureau-a-votre-portee[french magazineより初心者向け記事を投稿] Ruby / GTKについて

編集: SourceForgeプロジェクトのメインページによると、Ruby-Gnome2(別名Ruby / GTK)はクロスプラットフォーム(Windows、Linux、Mac OS)です。


7


Rubyでは、成熟したクロスプラットフォームのUIツールキットであるTkを使用できます。 これはPythonおよびTcl用のデファクトGUIツールキットであり、Perlでも使用できます。 Tkの最新版はTkが時代遅れに見えるという主な関心事に取り組むネイティブウィジェットを利用しています。

Tkを専門とする、言語に依存しないWebサイトはhttp://www.tkdocs.com/です。ここには、RubyとTclの両方でコーディングされた例が含まれています。


2


Pragmatic Programmerの本の恩恵を受ける FXRuby、およびwxWidgets C GUIフレームワークに基づく wxRubyもあります。


2


wxperlプログラマなので、私はwxrubyもあることを知っています。 Wxはかなり高速で、真のクロスプラットフォームルックアンドフィールを持ちます。


2


http://www.pressure.to/ruby_gui_survey/[Ruby GUI 2008 Survey Results]およびディスカッションhttp://old.nabble.com/Desktop-GUI-apps-in-Ruby-td26088853.html#をご覧ください。 a26088853 [ここ]。 あなたは知りたいのです。


1


Rubyについてはよくわかりませんが、Mono / C#について言及しました。最近、MonoとGTK#を使用したことがあり、非常に感心しています。 かなり安定しているようで、クロスプラットフォームの移植性はいいです。


1


Ruby / GNOME2はかなりうまくいきます。 Gladeを使用してウィンドウ要素をドラッグアンドドロップし、RubyアプリからUIに読み込むことができます。


0


Java上のSWTを見たことがありますか? ネイティブウィジェットを使用しており、Swingよりも優れたインターフェースを簡単に取得できます。