Mac OSX向けのアプリケーションを開発するにはCocoaやObjective-Cといった特有の言語を習得する必要がある。今はWebアプリケーションが盛り上がっているのに、特定のプラットフォームでしか動かない言語を習得するのは面倒くさい、そう考える方も多いはずだ。

Picture 620.png

アプリケーション一覧、プロセス一覧を表示するデモアプリケーション

 

そんな方に朗報だ。JavaScriptを知っていればMac OSX向けアプリケーションが開発できる時代になってきたのだ。それを可能にするのがJSCocoaだ。

JSCocoaはGoogle Code上で公開されているオープンソース・ソフトウェアで、ライセンスはMITライセンスとなっている。

Mac OSXでは元々RubyCocoaと呼ばれるソフトウェアやPyObjCといったPythonとObjective-Cの橋渡しをするソフトウェアが存在している。この時に使われている手法をJavaScriptにも適用したのがJSCocoaになる。

Picture 617.png

ワンライナーで実行結果を確認できる

 

利用しているのはWebKitのJSエンジンとのこと。ワンライナーで動作を試せるプロンプト的アプリケーションと、現在アプリケーションフォルダにあるアプリケーションを一覧して起動したり、起動中のアプリケーションを終了させるデモがあるのでお試しいただきたい。

JavaScriptをラッピングしているとあって、アプリケーションの中身を開くとJavaScriptのファイルが存在している。これを修正するともちろん動作が変更される。この感覚は非常に新鮮だ。

なぜか(いや嬉しいのだが)ユニコードがサポートされており、変数名や関数名に日本語が利用できてしまう。これが良いか悪いかは判断が難しいが、ある意味分かりやすいプログラミングになるかも知れない。

プロセスにまでアタッチできるとなれば、できることは相当多そうだ。最新の開発状況ではiPhoneエミュレータ上でも動作するようになってきているとのこと、そのままWebアプリケーションとまではいかないだろうが、Web - Mac OSX - iPhoneとつながる言語が生まれつつあるのは確かだ。

 

JSCocoa — A bridge from JavascriptCore to Cocoa

 http://inexdo.com/JSCocoa

jscocoa - Google Code

 http://code.google.com/p/jscocoa/