2007年 03月 25日

RubyCocoa はホントに素晴しいからマカーな人はみんな使ってみるといいと思う。

たぶん Python とか Perl とかでもできるんだろうけど、言語はそんな関係ない気がする (Ruby 好きだから Ruby で書いてるけど)。

BUS Error でると悲しいけど、そんなに出まくるわけじゃないし、簡単に GUI も作れちゃうし (偉大なる Interface Builder 様のおかげ)、Cocoa でできることはなんでもできるし、Cocoa でできない Carbon なのも obj-c で拡張ライブラリ書いて (Ruby の拡張ライブラリは驚くほど簡単に書ける。「ちょっとめんどうくさい C syntax な Ruby」だ) 組みこめるし、そうなると (C 書いてるからあたりまえだけど) なんでもできる。


あと、拙作の newcocoa を使うとちょっと楽になる (バグってるかも。0.0.1 はおかしくて手元ではなおしてたのだけど、リリースしてなかった。さっき 0.0.2 をリリースした)

# sudo gem install newcocoa
newcocoa Sample
cd Sample
rake

これで Sample アプリが起動する。rake でコンパイルして実行までする (test がデフォルトターゲットではない)

open English.lproj/Main.nib

すると Interface Builder が起動するので、ウィンドウとか作って、必要なクラスとか作って、繋げて、保存して、で作ったクラスのヘッダファイルを作ってどーん。

例えば MainController っていうクラスを NSObject を継承して作って instantiate して、それにアクションとアウトレットを定義して、Ctrl 押しながらデザインしたフォームのアイテムと関連付けて、インターフェイスのテストして、あとは MainController を Create Files... で .h にしたら

newcocoa -c MainController.h

とかやると MainController.rb ができてインスタンス変数 (Outlet) やメソッド (Action) が定義されるので、あとはそれを書くだけ。Cocoa のドキュメントは http://developer.apple.com/cgi-bin/search.pl?q=%s を適当なキーワードで Fx にブクマしておけばぜんぶひっかかる。

気がむいたらスクリーン{ショット,キャスト}付きでまとめたい。てか Mac のスクリーンキャストでいまだに最適解を見つけられてない。VNC を録画ぐらい (でもめんどくてやらない) そういえば VNC で録画して変換したやつをさらん flv にするのはためしてない。