オルタナティブ・ブログ > プロジェクトマネジメント10.0 >

失敗しないウェブアプリケーション開発の処方箋

【まとめ】Google I/Oの内容が理解できなかったので整理してみた

»

お世話になっております。
ループス岡村です。

最近FacebookやTwitterをはじめとするソーシャル分野でも覇権を巡ってめまぐるしい動きが続いていますが、ここへきてGoogle I/Oでまた盛りだくさんな内容が発表されたのでもはやついていけなくなりました。

色々なニュースを見ているのですが、断片的で大変なのでまとめて図示すると共に、資料集的に関連用語の説明を付けてみました。

Google I/Oの発表内容を絵にするとだいたいこんな感じでいいですか?


 

Googleio

ぜんぜん整理されてねぇじゃねえか、という声が聞こえてきそうですが。。。

アップロード時に画像が圧縮されてしまい見づらいので、図の元ファイル(Excel2007形式)はここにあげておきます。修正や転載、配布なども無許可で結構ですのでご自由にご利用ください。

GoogleIO.xlsxをダウンロード (「右クリック」⇒「名前を付けて保存」で保存できます。)

Publickey Junichi Niino氏の記事「[速報]Google I/Oで発表された4つのポイント」で紹介されていた、4つのポイントにそれぞれ図中で①~④の数字を振っています。各ポイントに関する詳細はPublickeyの記事を参考にしていただければと思いますが、ここでもごく簡単に説明させていただきます。

  1. VP8オープンソース化
    Googleが2009年に買収したOn2が持っていたビデオコーデック(圧縮)技術をオープンソース化すると共に、Xiph.orgが開発した音声コーデオックVorbis(ボルビス、ボービス)を併せて「WebMプロジェクト」と呼ばれるオープンなメディアフォーマットを推進することを発表したそうです。
  2. Chrome Web Store
    ブラウザから利用できるWebアプリを配布・販売するマーケットプレイス「Chrome Web Store」と課金システムを2010年後半に公開するとのことです。
  3. VMwareとの協業
    Webアプリケーションの開発分野でVMWareと協業することを発表しました。VMWareが2009年に買収したSpringsourceが持っているSpringFrameworkやSpringRooなどの技術とGoogleがかねてより開発していたGWTなどの技術を組み合わせることで開発効率を向上できるとのことです。
  4. Google App Engine for Business
    Googleが提供するクラウドベースのホスティングサービス App Engine にビジネス向けラインナップを追加することが発表されました。SLAの策定やサポートの充実に加え、かねてより期待されていたSQL(BigTableではなく)データベースへの対応が発表されました。

リファレンス
私の勉強不足で知らない用語が多かったため、色々と調べました。備忘録的につけておいたメモの内容に若干内容を追加して用語集としてまとめてみました。内容についての確実な情報はリンク先サイトをご参照いただければと思います。また、VMForce は Google I/O と関係ありませんが、VMWare繋がりの旬な話題ということで取り上げました。

  • Spring Roo
    次世代の高速なアプリケーション開発をサポートするコード生成ツール。JPAを使って(?)データベースをリバースエンジニアリングし、CRUDオペレーションを持つ管理画面やテストコードを簡単に作成できるらしい。
  • SpringSource Tool Suite
    SpringSourceが提供するEclipseベースの統合開発環境。 専用のエディタやツールの他、VMwareのvSphere や vCloud、GoogleAppEngineなどへ開発したコードを直接デプロイすることもできるようだ。
  • JPA
    Java Persistence API の略。SQLなどでデータベースを操作しなくてもプログラム上のオブジェクトへの変更がデータベースに反映されたりする仕組み。私が開発をやっていたころお世話になった Hibernate も、現在はこの仕組みを利用しているらしい。
  • GWT(グウィット、Google Web Toolkit)
    Googleが提供するWebアプリケーション開発ツール。Javaで書かれたプログラムをコンパイルしてJavaScriptを生成する。AjaxによるリッチなUIを実現するために開発された。単にJavaScriptを生成するだけでなく、市場に流通するほとんどのブラウザの各バージョンに最適化されたJavaScriptを出力することができる。現在はEclipseプラグインとしても配布されている。
  • Google Web Toolkit Speed Tracer
    Googleが提供するパフォーマンス改善のためのツール。Google Chromeのエクステンションとして提供されている。Google Code Blog によると、クライアント上でのスクリプト実行時間やネットワークだけでなく、サーバサイドでのパフォーマンス改善にも寄与するようだ。
  • Private Cloud, Public Cloud, Hibrid Cloud
    Public Cloud は不特定多数が利用するクラウド、Privateは利用者が特定できるクラウド、Hibridはそれらを組み合わせたクラウド。主にIaaSとしてのクラウドに用いられることが多いと思う。
  • WebMプロジェクト
    Googleが提唱するオープンなメディアフォーマット。VP8ビデオコーデックとVorbis音声コーデックが含まれる。
  • VP8
    On2Technorogies社が2008年にVP7コーデックの後継として開発した、ロイヤリティフリーでオープンな高精細なビデオコーデック。現在Flashなどで採用されているH.264は特許技術だが、VP8はオープンソースとして公開することを2010年4月にGoogleが発表した。FlashPlayerやSkypeに同梱される形で、すでに20億ユニット以上の出荷実績があると言われている。
  • Vorbis
    Vorbis(Ogg Vorbis、ボルビス、ボービス)は、Xiph.orgが開発したフリー音声ファイルフォーマット。広く使われているMP3など のフォーマットは特許の制限を受けるため、それらの代替として誰でも自由につかえる圧縮音声フォーマットを提供することを目指して作られ た。
  • VMForce
    Force.comが提供するプラットフォームでJava技術による開発を可能とする一連の仕組み。Force.com と VMWare が共同で開発する。これまでSalesforceをはじめとするForce.comのプラットフォーム上ではApexというJavaに似た独自言語での開発による機能拡張しかできなかったが、この仕組みによりEclipseIDE上でJ2SEやPOJO、DIといった一般的なJava技術によって開発やデプロイを行うことができるようになるとのこと。
  • SpringSource、Springフレームワーク
    Spring Frameworkの開発者Rod Johnson氏の率いる企業。2009年にVMWareに買収された。SpringフレームワークはDIコンテナ(Javaのプログラミングロジックと静的データなどを分離するための仕組み)やAOP(アスペクト指向プログラミング、システムの横断的関心事をビジネスロジックから分離するプログラミング指向)などのJava開発に必要なモジュール群。開発当初エンタープライズ市場で一般的であったEJBに対して「軽量」なフレームワーク、コンテナと呼ばれることもあった。

まとめ
HTML5のビデオコーデックにオープンな規格が採用される流れが加速し、クラウド上での開発に便利な仕組みがオープンソースで整備され、Google App Engineのようなパブリックなクラウド上にビジネス向けアプリケーションをホストするのに十分な条件が整い、ホストされたアプリは(AppleStoreと比べて)オープンなマーケットプレイスでやり取りされる、と。

何から何までオープンで、クラウドな感じだということがよくわかりました。
大変勉強になりました。

その他の参考サイト

◆TheRegister.co.uk
最初に見つけた記事です。GoogleがMySQLを採用すると書いてあるように見えるんですけど。。。
http://www.theregister.co.uk/2010/05/19/google_teams_with_springsource/

◆Publickey1.jp
Googel I/Oの事について調べ始めたのですが、技術系の話題について私のような素人でも非常にわかりやすく解説してあり、感動しました。はじめて見つけたサイトなのですが、非常におすすめです。
http://www.publickey1.jp/blog/10/google_io4vp8chrome_web_storevmwaregoogle_app_engine_for_business.html

============================================================================

◆2010年5月21日追記
図(画像)中、「Google Web Toolkit Speed Tracer」が見えなくなっていたので修正しました。

Comment(2)