2009-07-15 1 views
11

私はRubyデスクトップアプリケーションの開発プロジェクトを開始しようとしています。私はかなり大きくなることを期待しており、モジュール間でコードを分割し、複雑さを管理するための技術を学びたいと考えています。私が見てきた大部分の大規模なアプリケーションはRailsアプリケーションですが、Rails自体の作業の大部分が行われるため、これらはあまり役に立ちません。Rubyを使用している自明ではないデスクトップアプリですか?

私は見てみるとよいでしょうか?私はライブラリやRailsアプリケーションに興味はありません。 CLIアプリケーションはOKですが、私は主にGUIアプリケーションに興味があります(私はGtk +を使用していますが、他のGUIツールキットを使用しているアプリケーションからも多くのことを学ぶことができます)。

答えて

2

FxRuby(ruby guiライブラリラッパー)をチェックしてリードが出​​てくるかどうか確認してください。

Railsアプリケーションに使用されているのと同じ組織理念を適用し、デスクトップアプリケーションに適用することはできます。 Griffonフレームワーク(Java Swingフレームワーク)は基本的にGrails(本質的にJava Railsクローン)のためのものでした。

+0

うん、Railsの素晴らしいところは、あなたが実際にそれを行うことを考える必要はありませんです(私はそれは誇張だ知っています)。Railsが期待しているコードを置いて、すべてがうまくいくようにしてください。 Railsは基本的に複雑さとモジュール性を扱います。たぶん私は、アプリケーションをラップするためのフレームワークを開発する必要があります。 –

+1

Rails自体は、Basecampから抽出されたフレームワークとして正確には開発されていませんでした。だから私はあなたがあなたのアプリケーションをうまく設計すれば、良いフレームワークの始まりがあると言います。 – Chuck

7

FreeBASEプラグインマネージャーシステムは、GUIアプリケーションでコードを編成する方法として設計されており、Ruby/GtkテキストエディタRedcarの開発で私にとってうまくいきました。

FreeBASEは、オンラインオープンデータベースプロジェクトFreebaseとはまったく関係がありません.FreeRIDE Ruby IDEの人々が、大規模なGUIプロジェクトの構造を簡単にするために開発したものです。

FreeBASEはFreeRIDEの一部ですが、別途動作します。その情報はhereです。

+0

私は実際にインスピレーションのためにRedcarのソースコードをかなり読んできました(かなりクールですが、私はVimの人です)。私はFreeBASEをチェックアウトします。ありがとうダニエルとRedcarの素晴らしい仕事を続けて、多分私は変換します;) –

2

JotBotについて聞きましたが、まだ試していません。

MonkeyBarsでも、デスクトップ(J)RubyのMVCフレームワークについて話しています。

4

Ruby(Cocoa)で書かれたグラフィカルなircクライアントであるLimeChatをチェックしてください。そのソースコードはgithubで入手できます。

5

(downvotesのリスクがある)

Rubyは私の主要な言語である、と私は、コードの大部分が既に書かれていない限り、Rubyで大規模なデスクトップアプリケーションをコーディングに対する助言と単に新しいGUIフロントエンドを必要とするでしょう迅速に開発されました。 IMHO、あなたは苦痛の世界に入り込んでいます。 CRubyはデスクトップアプリケーションにとって重要ないくつかの分野では弱いため、この仕事のための最良のツールではありません。私はJotBot、トラッキングのためのデスクトップアプリケーションの所有者だ、しかし...

+0

ええとjruby以外のものは、クロスプラットフォーム移植性の点で私を恐ろしい私...ちょうど1つのプラットフォームをターゲットにしたい場合、 。 – rogerdpack

+1

ああ、RedCarは、Daniel Lucraftのコメントで言及されているように、同じ結論に達している可能性があります。彼らはJRubyに切り替えました。確かに、それはDaniel自身のエディタです;) –

+0

GTK +を使うつもりなら、非ブロックIO問題に取り組みたいと思っています.GIOを使うことをお勧めします。とにかくGTK +のライブラリやツールにもっと頼ると、Rubyではなく、移植性とGTK +で提供される似たようなレベルが得られます。 –

7

に糸を通すなどIO、第一級のGUIツールキットのサポートを、非ブロック...

のJRubyやIronRubyのは違う話です時間。 MonkeybarsとJRuby + Swingを使ってビルドされました。これは、クロスプラットフォームのデスクトップアプリケーション用の非常に堅牢なツールセットです。 Swingを使用すると、特定のデスクトップの本来の外観を実現することが妨げられる可能性があるという欠点がありますが、それ以外のことは本当の勝利です。さらに、Rawrを使用すると、OSX、Windows、およびUbuntuのバンドルアプリケーションとインストーラを簡単に作成できます。ご質問があれば

は私の行を削除:[email protected]

関連する問題