« スゴロクっぽいゲームをつくる1 | トップページ

2016年11月25日 (金)

RubyのGUI界隈 2016

お久しぶりです。
何年ぶりかの更新です。
久しぶりにGUIを使ったアプリを書こうかと
RubyのGUI関連のライブラリを調べてみたのでメモしておきます。

前に記事を書いていたときに使っていた処理系はruby1.9x。
それが今や2.3xが出ておりすっかり環境が変わっております。

巷ではすっかりWeb全盛期なのでOSネイティブなGUIアプリの需要が薄れているようです。
こちらもご多分に漏れずRailsに手を出している状況。
RubyといえばRailsという状況では
GUIはHTMLやCSSでデザインが当たり前といった時代です。

でもちょこっとしたアプリはわざわざ大げさなフレームワークなんて必要ないので
ちゃちゃっと書きたいのであります。

ということで最近のGUIライブラリ事情を調べてみたのでメモしておきます。

特に動作確認していないので推測で書いている部分あり。参考程度にどうぞ。  2016/11現在。

wxRuby

このブログのテーマとなっているライブラリ。ruby 1.9系までサポートで更新が止まっております。2.0xで試して動いたような記憶があるが定かではない。wxWidgetsは2.8xをサポートしているが最新は3.1xがリリースでこちらの機能を使いたい向きには厳しい(普通に使う分には2.8xでも十分だと思うが)。古い環境で十分な場合は良いが少し工夫が必要な場合がある。この辺りは過去の記事を見て欲しい。
このあたりはwxPythonも同じでバージョンが追いついてないようだが、Phoenix プロジェクトで一応新しいバージョンのpythonでも動くらしい。
wxrubyも頑張ってくれと思っていたらwxruby64 というパッケージがあるようです。ruby2.3サポート限定らしいのですが俺は信じていたよ、やってくれると。開発者に感謝!

Shoes

お手軽にRubyでGUIといったらこちらのライブラリが真っ先に紹介されていた時代がありました。ただデザイン性がどうもOS標準と違うようなので(レイアウトとかどう組めばよいのかわからない)使っていませんでした。ただ最近はWebページもモダンになっているし、新しいバージョンを開発中らしい。shoes3はruby 2.2x系など新しいバージョンをサポート。基本的新機能を使わないメンテナンスモード。shoes4はJavaベースで作成中とのこと。なのでJRubyが必要。(shoes3はCベース)。

FXRuby

FOX GUI toolkitを使ったライブラリ。Webページが全然更新されていないがパッケージは継続的にバージョンが上がっているのでメンテナンスモードと思われるが新しいバージョンのrubyで動作する可能性がある。使ったことはないがイイ感じのライブラリだった記憶がある。

Flammarion

electronchromeと連携したGUIが作れるライブラリのようだ。というかwebsocketを通じてruby側で作ったhtmlやjavascriptを流し込むという動きらしい。まだ出来たばかりなので非常に機能は少ないようだが野心的だ。

shoes-atom

shoesを使って作成したrubyコードをOpalでJavaScriptにコンパイルしてelectronで出力、といったイメージらしい。イマドキのライブラリという感じ。

JRuby

SwingとかSWTとかAWTとかJavaFX2とかJava系ライブラリで組むらしい。使ったことがある人ならば経験が活かせると思うしJavaなので安定感がある。

qtruby4

Qt4系サポートのライブラリと思われるがリンク切れでパッケージもアップデートされていないので後述のqtbindingsを使ったほうが良さそうだ。

qtbindings

Qt4系サポートのライブラリ。rubyのバージョンで使うパッケージのバージョンも変わるので注意。qtruby4の後継なのだろうか。こちらはパッケージのバージョンが上がっているので継続的にメンテナンスされているようだ。Qt系は他にもqmlがあるようです。

Ruby-GNOME2 Project

GTK系ライブラリ。gtk2とgtk3では含まれるライブラリが違うらしい。どっちが良いかわからなければgtk3を使っておけばOKでしょう。継続的にメンテナンスされており安定感があります。

vruby

VisualuRubyですね、懐かしい。VisualBasicからのネーミング。思えば2010年ぐらいまではGUI開発環境が群雄割拠という時代でした。結構な値段がしたのですがいまやこれら商用プロダクトも最低限のEditionならタダで手に入る時代になってしまった。恐ろしい。ruby1.9xまでサポートしているようです。

Ruby/Tk

rubyの標準GUIライブラリだが使ったことはない。ruby2.4からgem化して切り離されるらしい。コレも時代か。Tcl/Tk自体は長年開発が続いているし様々な言語のGUIとして使われているのでまともなGUI環境がない場合、勉強しておくと役に立つかも。デザインツールとかあれば普及するのかな。

WideStudio

UNIXから組み込み系まで幅広くサポートしているらしい純国産のオープンソースのデスクトップアプリケーション統合開発環境。MITライセンスで利用できる。ある意味最強かもしれませんがrubyサポートバージョンが不明です。最近は更新もされていないようです。ruby開発に使う場合、こちらの情報が有益かもしれません。

長々と書いてしまいました。wxRuby64は継続して貰いたいですね。そうしないとこのブログも消滅の危機が訪れてしまいます。(;ω;)

このgemやライブラリ、ツールはどうした!とか、なぜ書かない!とかあるかもしれないですが暇があれば書くかもしれませんのでコメントして下さい。

ここまで調べといてアレですが個人的なツールはelectronで作ろうかなと思っております。イマドキな感じがするので。wxPythonも触りたいな。

|

« スゴロクっぽいゲームをつくる1 | トップページ

環境」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1201593/68569345

この記事へのトラックバック一覧です: RubyのGUI界隈 2016:

« スゴロクっぽいゲームをつくる1 | トップページ