AppleがOpenJDKに参加してMac OS XのJavaをオープンソース化(TechCrunch)
アップル、「Mac OS X」のJavaを更新--今後の同梱中止を示唆(CNET Japan)
Mac Apps StoreでJavaで開発されたアプリが閉め出された(engadget)ことでも怒り出す人もいるんだろうだが、今のJavaアプリってサーバサイドが基本でクライアントにJVMがあってもなくてもあまり関係ない気はする。単なる実感ではあるが。
だからクライアントサイドのアプリをJavaで作る開発者っているのかなあ、という素朴な疑問が湧いたが、iPhone、iPadアプリに関してはAndroidの開発言語がJavaなので、アプリの横展開を必要とする開発者は結構いそうだ、というブログ記事(良寛日誌)を読んで、なるほどな、と思った。
この記事はJavaコードをObjective-Cコードに変換する開発環境というかポーティング環境を紹介しているが、Androidの場合もコードソースはJavaなのにAndroidのVM上で動かすときは別物になるらしいから、やっていることは一緒か。それでOracleから「抜け道を使っている」(ITmedia)と騒がれているわけだが。
つまり「AndroidはJVMを使っていない」というわけだから、JVMってユーザ&クライアントサイドから見ればやっぱりあんまり未来のあるものでもないのかも知れない。そのうち、Oracleとのクロスライセンスも面倒だとGoogleが「今度からJavaじゃなくてウチの独自コードを使ってください」と開発者にアナウンスするかもしれない。今のGoogleの勢いならそうなっても開発者が大挙して逃げ出す恐れはないだろうし。
それはともかく、ジョブズの「ウチはもうOSにJVMは同梱しない。やるならOracleが勝手にやればいい、使いたい人はそれをインストールして使えばいい」という発言はそれほど実情と乖離していないとはいえる。本人が本当にそう言ったとすれば。
おそらく本音としては、大多数のユーザがほとんど使う可能性がないコンポーネントを開発するのに貴重な開発人員を割きたくないってところか。
もちろん開発者が好きな言語で開発して、それがどこでも動くってのが理想ではあるんだろうが、商用OSである限り懐事情ってものもあるわけで。
Googleが始めた「Webブラウザで何でも出来る。OSなんて何でもいい。機能拡張コンポーネントも要らない。」という流れが、その考え方の先輩であるJavaを大いに利用しながら、稼働させるコンポーネントをクライアントから追い出す形に働いたのなら皮肉な話。
そしてその流れの追い風を受けているのがマイナーOSの持ち主であるAppleというのも両者の関係を考えればやっぱり皮肉な話。
というか、世界中からのアクセスを求めて障壁はなるべく無くしたい(ユーザにインストールなんて手間を煩わせたくない)GoogleとWindowsとの差異を埋めたいAppleが目指すところは、クライアントサイドに関してはやっぱり近いのかも知れない。
サーバサイドに関して言えば、Appleは事実上サーバ分野からは手を引くだろうから、Googleと真っ向勝負することはない。
それに、Appleが本当にJVM for Mac OS Xを抹殺するつもりなら自社で墓標を立ててお終いにしたんだろうが、オープンソースとして解放しているところを見ると前述のポーティング環境を利用した「Androidとの横展開」を睨んでいるのかも知れない。
? なんでこの2社の仲が悪いのか分からなくなってきたな。
最近のコメント