Monacaなる超絶開発環境

WEB系の表現にウトいこともあって気づいていなかったけど、アシアル株式会社のMonacaという開発環境が素晴らしい機能を持っていた。このMonacaはHTML5(とCSS3とJavaScript)で記述して、iOSやAndroidなど複数のプラットフォーム向けのネイティブ・アプリを出力できる。つまり、大昔ならFlashアプリがそうであったように、各プラットフォームの特性を無視した大味なアプリがワン・ソースで作れるわけ。また、クラウド型IDEによってWEBブラウザ(とインターネット)だけで開発ができる。自分のマシンであろうが他人様のマシンであろが、いつでもどこでもログインさえすればセットアップ要らずでWEBベースの緩慢かつ低機能なエディタで作業が続けられる。このあたりがMonacaの大きなメリット(とデメリット)みたい。

Monaca

もっとも、そのようなメリットは個人的には響かない。XcodeでiOS SDKを駆使したSwiftコードを書くほうが遥かに快感だし、マルチ・プラットフォーム対応は砂糖をまぶした悪夢だからね。ところが、Monacaは現在のXcodeでは絶対にできない領域に君臨している。それは開発中のアプリを複数のiPhoneで同時に動作させること。もちろんXcodeでもiPhoneのアプリを動作させられるけど、それは1台に限られるよね。それがMonacaでは何台でも同時に動くわけ(驚愕)。

実際の動作状況は以下のムービーでどうぞ。これはSnowflakesの基本処理をHTML5化してMonacaで動作させている。MacBookではSafariでMonaca IDEを開き、iPhoneではMonacaデバッガーなるアプリを開く。いずれも自分のアカウントでMonacaにログインしておけば、すべてのiPhoneでHTML5で記述したアプリが起動する。途中でコードを修正して保存すれば、それだけで修正したファイルが再同期されてアプリが再起動する。ムービーでは途中で背景色を変えている。ね、恐ろしく簡単で快適でしょ?

このデモでは、Monacaとして動作するアプリをProcessingのJavaScript版であるp5.jsで書いている。JavaScriptは簡単だけど、p5.jsはもっと簡単で、しかもJavaScriptとの親和性も高い。サーバはMacBookで動いていて、これはnode.jssocket.ioで記述。クライアント(iPhone)での通信もsocket.ioを利用している。このようなJavaScript(およびCSS)のライブラリはMonaca IDEで管理できるし、手動で追加・変更しても構わない。

さて、一般には同時に何台も動いても嬉しくないけど、それはデンタクのようなアプリだからだよね。Snowflakesと同様にincubatorOkeanos Buoyなど、複数のデバイスが相互に関連しながら総体としての表象表現を目指している者には、これは喉から手が出るほど欲しい機能に他ならない。これまでも独自の動作環境を作っていたけど、それはパラメータ調整程度に留まっていた。それがMonacaでは言語レベルで構築できるから、感涙なわけです。作業効率は当社比100倍ね。後はこれで作品作れって話だけど、もちろんそれが一番難しい(笑)。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

This blog is kept spam free by WP-SpamFree.