Facebook for android ネイティブアプリ化

 iOS向け Google Mapのリリースが話題となっている今日この頃, Androidユーザーにも嬉しいアプリの更新がきた. モッサリ動作で評判の悪かったFacebook for androidのバージョンが2.0となり, ついに待望のネイティブなアプリケーションとなったことだ.

 従来のFacebookアプリはプログラム面が強化された次世代(?)のWEB記述言語 HTML5でコーディングされていた. このHTML5による構築のメリットは, WEB, iOS, androidといったの異なるプラットフォームを1つのアプリでほぼカバーできる点だ. これによりディベロッパーは1つのアプリケーションを継続的に開発すればよくなり, 短いスパンで, 各プラットフォームごとに機能の違いがでることなく, 機能強化を行うことができる. Windows, Mac, Linux, iOS, androidといった異なるプラットフォームから同じようにWEBページが見ることができるイメージに近い.

 さまざまなプラットフォームが存在する今日, WEBはプラットフォーム共通の次世代アプリケーションのためのプラットフォームとも呼ばれ, WEB上で動作するプログラムとしてHTML5は非常に大きな注目を集めている. Facebookのアプリもこうした流れにのっとりこれまでHTML5で構築されてきたが, そこに問題があった. 現行のハードウェアと現行のWEBの技術では処理速度が間に合わなかったと言われている.  処理速度という点ではネイティブアプリに及ばないHTML5では, 徐々に肥大化するアプリケーションの機能に対応しきれず, 結果 モッサリ動作につながったのだ.FacebookはHTML5戦略が間違えだったと言い切り, 今回iOS, androidともにネイティブに切り替えた.

 ユーザーとしては快適に動作するアプリケーションは素直に嬉しい. だが同時にHTML5, WEBという次世代プラットフォームにとっては大きな痛手であることは明白で, これによりHTML5への動きが停滞してしまわないことを願う.

 ところでHTML5に対し, 純粋なandroidのアプリケーションをネイティブアプリ と呼びことに疑問を覚えるのは私だけだろうか? iOS版のアプリケーションはObjectiveCで書かれていて, 確かにiOS向けにコンパイルされたネイティブアプリだ. ところがandroidは多くの場合javaで書かれていて, 一度中間言語にコンパイルされた後, 端末側のVMでandroidが扱うことのできるバイナリにJITコンパイラがコンパイルしているはずだよね. PCでjavaのプログラムが動く時と同様な感じで. でもPCではjavaのアプリケーションはネイティブとは言わないよねぇ…androidにおける標準がjavaだからそういった意味でネイティブ なんだろうけれど, やっぱりいつも違和感を覚えてしまう.

長い駄文を失礼しました.

© 2025 shunya-wisteria