OS X YosemiteからJSでMacアプリを作れるようになったって!?と聞いてみたものの

Pocket

次期MacOSXのYosemiteからAutomationをAppleScriptではなくJavaScriptで書けるようになったというのは聞き及んでいましたが、Macアプリも作れるようになっていたとは知りませんでした。

どんな感じで書くの?

というわけでBUILDING OS X APPS WITH JAVASCRIPTという記事にチュートリアル形式でJavaScriptを利用したMacアプリの作り方が書いてあるので、詳しくはそちらを・・・といきたいと思ったのですが、

このコードを見るやいなや立ち昇るCocoa臭。$.NSWindow.alloc.initWithContentRectStyleMaskBackingDeferというコードからはRubyMotionでiOSアプリを作っていた頃を思い出します。

何のことはなく、JavaScriptっぽく書けるというよりは、JavaScriptで書けるだけということなんですね。今ならSwiftがあるし、ObjectiveC嫌ならSwiftで良いじゃんとも思う。何よりCocoaは、補完きかないと書く気がしないですよねー。。

あと、ボタンクリックのイベントハンドラを作るのに、

こんな感じのコードを書かなければいけないのは、ちょっとつらい気が。registerSubclassがおもいっきりObjectiveC感出てる。

メリットとしては、ちょっとしたアプリを作りたいときにいちいちViewControllerだの作る必要なく、スクリプト気分(いや、スクリプトだけど)で(ハマらなければ)サクッと書けることですかね。いっそRubyMotionでRubyで書きたいところですが、RubyMotion有料ですしね。あとは、ちょっとしたラッパーを書けば生産性上がるのかも知れない。