macrubyのintroduction

MacrubyのIntroduction見て分かったことまとめ。
とりあえず、サンプルコードをそのまま書いて実行するとボタン一個のウィンドウができました。
たった35行。短い!

Online Feedback Publishing System - O'Reilly Media

まず、フレームワーク「AppKit」を読み込んでいる。
これでObjective-C用のGUIフレームワークが使えるようになるらしい

そしてAppDelegeteクラスを作成。
そして3つのメソッドを定義
applicationDidFinishLaunching:アプリケーションが起動したときに呼ばれるメソッド
windowWillClose:終了する時に呼ばれるメソッド
say_hello:Hello, world!と言うメソッド

アプリケーションを起動すると、applicationDidFinishLaunchingメソッドが呼ばれ、
NSSpeechSynthesizerのインスタンスを作成。
このインスタンスはAppDelegeteクラス内からならどこからでも呼ぶことができて、
say_helloメソッドでも使われている。

そして、NSApplicationクラスのインスタンスを作った後、そのdelegeteプロパティにさきほどのappDelegeteクラスのインスタンスを作成。
これでGUIとappDelegeteクラスを結び付けられる。
しかし、これだけじゃウィンドウとかを作ってない。
なので、これからGUI部分の指定をする必要があるらしい。

ウィンドウを作るのにNSWindowクラスのインスタンスを作成。これに関しての詳細は5章で書いてくれるらしいので、ここでは簡潔にこう書いてね!って書いてあるだけ。

NSButtonからインスタンスを作成し、appDelegeteクラスに関連付け、押された時にsay_helloメソッドを呼ぶように指定。

それでつくったbuttonをwindowに紐付け、app.runでプログラムを走らせている。