MOONGIFT

オープンソース・フリーウェアを毎日紹介するブログ。日々の業務の効率化、新しいサービスのネタ探しにどうぞ。SNS、SBS、CMS、オフィス、画像編集、ユーティリティ、Firefoxアドオン、テキストエディタ、ゲーム…ジャンルは様々。

JavaScriptではじめるMac OSX用アプリケーション開発「JSCocoa」

タグ: [] [] [] [] [] [] [] [] [] []

buzz_button

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/

November 25th, 2008 Posted by admin | 2 コメント

2 Comments »

  1. > 変数名や関数名に日本語
    JSCocoaでのサポートはともかく、もともとECMAScriptの仕様に含まれています。
    最近のブラウザなら普通に使えますよ。

    Comment by ttk | 2008/11/25 Tuesday

  2. コメントありがとうございます。うわ、確かにSafariやFirefoxでも日本語が使えました。となると、Cocoaが日本語関数名を使えなくて、そこのブリッジもできますよ、ということかも知れません。

    何となくVBA(VBでも使えたかな?)に似た気持ち悪さを感じてしまうのは私だけでしょうか>日本語関数

    Comment by admin | 2008/11/25 Tuesday

Leave a comment

MOONGIFTネットワーク。こちらもぜひご覧ください。
MOONGIFT
Open Service
Rails 2.0
Resident on Net
iPhone最適化
リーンソフトウェア
MarketPedia
Producing Web
Cool Coding