特集 マルチデバイス対応アプリの可能性(前編) Live Meshアプリケーションとは何か? デジタルアドバンテージ 一色 政彦2009/02/24 |
Page1
Page2
|
2009年1月27〜28日、マイクロソフトによる開発者向けカンファレンス「Tech Days 2009」がパシフィコ横浜で開催された。このカンファレンスは、昨年秋に米国で開催された「PDC(Professional Developer Conference) 2008」の日本版であり、Windows AzureとWindows 7が2大テーマとなっていたが、今回、筆者はマイクロソフトの方から「実はマイクロソフトはLive Meshにかなり注力している」という情報を得ていたので、Live Services(特にLive Mesh)に関するセッションを中心に聞いて回った。本特集記事はその内容の要約記事である。
多くの読者にとって、Live Meshを含めたLive Servicesに対する感想は、「検索や地図などWindows Live用のWeb APIで、基本的にコンシューマ向けのものでしょう?!」というものだと想像するが、筆者は今回のLive Meshアプリケーション(=Mesh-Enabled Application:Mesh利用アプリケーション。以降、Meshアプリ)に関するセッションを聞いて、「これはAdobe AIRの対抗技術であり、Google Gearsの対抗技術でもある。そして(Googleが考えているとうわさされている)Web OSという概念に相当する技術でもある」と感じた。要するに、Live Meshには、いま最先端のさまざまな技術要素が含まれており、未来志向の技術者にとって非常に興味深いテクノロジなのである。
では、Meshアプリとはどのようなもので、どうやって作るのか。本特集では、Tech Days 2009の複数のセッションから得られた情報を基に、筆者なりに分かりやすく伝えたい。全体を前後編に分け、前編ではLive Meshアプリの概要を、後編でその開発方法を紹介する。
※「アプリケーション」は「アプリ」と短く記述する。
■Live Servicesの概要
若干遠回りになってしまうが、全体を理解してから個別のテクノロジの説明に入った方が、そのテクノロジの位置付けを理解しやすいと思うので、まずは大枠であるLive Servicesについて簡単に説明しよう。
●Live Meshが属する「Live Services」とは何か?
|
Live Servicesは、マイクロソフトによるクラウドOS「Windows Azure」を中心としたクラウド開発プラットフォーム「Azure Services Platform」の構成要素の1つであり、マイクロソフトが提供する(主に)コンシューマ向けのWeb上のサービスである「Widows Liveサービス」の機能を開発者が利用/拡張するためのWeb API/SDK群の総称である。代表的なものとしては次のものがある(リンク先は基本的に英語のサイト)。
- Windows Live ID SDK(日本語MSDN)
- Live Search API 2.0(MSDN)
- Virtual Earth SDK(日本語MSDN)
- Silverlight Streaming SDK(日本語MSDN)
- Windows Live Gadget SDK(開発情報)
- Windows Live Admin Center SDK(日本語MSDN)
- Windows Live Spaces SDK(日本語MSDN)
- Windows Live Writer SDK(MSDN)
- Windows Live Alerts SDK(日本語MSDN)
- Windows Live Contacts API(日本語MSDN)
- Windows Live Messenger Library(日本語MSDN)
- Windows Live Photo Gallery SDK(MSDN)
- Windows Live Photos API(MSDN)
- FeedSync(開発情報)
- Live Framework SDK(MSDN)
Live Servicesが扱うサービスの中で、いま最も注目されているのが、Live Frameworkである。
●Live Frameworkとは?
Live Frameworkについては「Live Servicesのためのフレームワーク」という説明がなされることが多いが、現状は「Live Meshを利用するためのフレームワーク」という表現が最も的を射ている。そこで本特集では、Live Framework SDKを使ったLive Meshの活用について説明する。
■Live MeshとMeshアプリの概要
そもそもLive Meshとは、どのようなサービスなのか。
●Live Meshとは?
Live Meshは、複数のデバイス(PC、Mac、モバイル:携帯電話など)の間でデータやフォルダを同期するためのクラウド・サービスで、「Apple MobileMe」「DropBox」などの類似サービスと見ることができるが、Live Meshにはこれらのサービスにはない、同期サービスを超えた興味深い機能が多数搭載されているのが特徴だ。
●Live Meshの興味深い機能(1):Live Desktop
その1つが、Web(Live Meshのサイト)上のデスクトップ画面「Live Desktop」を有していることである。
●Live Meshの興味深い機能(2):Meshアプリ
またそのデスクトップ(Live Desktop)上で、(冒頭で少し触れた)「Meshアプリ」というLive Mesh専用のアプリを実行することもできる。次の画面はその実行例である。
Live Desktop上で実行したMeshアプリの実行例 |
実行中のアプリは、Live Desktop下部のタスク・バーに表示される。この動作は、通常のWindowsデスクトップと同じだ。 |
上の画面のように、Live Meshは、まるでPC上のデスクトップ画面のようなUI(ユーザー・インターフェイス)をWeb上で実現している。これが冒頭で、「(Googleが考えているとうわさされている)Web OSという概念に相当する技術」と書いた理由だ。
●Live Meshの興味深い機能(3):Meshアプリのマルチデバイス展開&オフライン実行
Meshアプリは、Live Desktopだけでなく、Windows OS(PC)やMacintosh OSなど、さまざまなデバイスのデスクトップ上でもまったく同じように実行でき、(インターネットから切断された)オフライン状態でも実行可能である。このようなマルチデバイス対応とオフライン対応の特徴をとらえて、冒頭で「Adobe AIRの対抗技術であり、Google Gearsの対抗技術でもある」という感想を述べたのである。
次の画面は、実際にオフライン状態のWindowsデスクトップ上で、Meshアプリを実行した例である。
Windowsデスクトップ上で実行したMeshアプリの例 |
Windowsデスクトップで実行したMeshアプリのウィンドウの右にもLive Meshバーは表示される。 |
Meshアプリで使用するデータは、マルチデバイスで共有され、ほぼリアルタイムに同期される。PCやMacなどのローカル環境には、ローカル・キャッシュが自動的に作成されており、オフライン実行時にはこれを利用する。
●Live Meshの興味深い機能(4):Meshアプリの自動展開
さらに、このMeshアプリを一度、Live Desktop上にインストール/アップデートすれば、(Live Meshに登録されている)すべてのデバイス(PC、Mac、モバイルなど)にも自動的に展開され、どのデバイスからでも同様に実行できるようになる。
以上のようにMeshアプリは、Web上のデスクトップやオフラインのローカルPC上で実行でき、自動的に複数デバイスに展開されるといった最先端のテクノロジを積極的に取り入れて構築された未来志向のアプリ形態であり、「Write and Deploy Once, Run Anywhere.」(一度コードを書いて展開すれば、どこでも実行できる)ともいうべき究極のソフトウェア実行プラットフォームは、多くの開発者にとって魅力的ではないだろうか。
以下では、このMeshアプリの利用方法について簡単に説明していく。Live Meshの大きな特徴の1つはフォルダの同期機能(=一般的な同期サービスの機能)であるが、本稿ではその説明は割愛し、より開発者の関心が高いと思われるMeshアプリに絞って開発者に向けて解説する。
INDEX | ||
[特集] マルチデバイス対応アプリの可能性(前編) | ||
Live Meshアプリケーションとは何か? | ||
1.Live Services/Live Mesh/Meshアプリとは? | ||
2.Meshアプリの利用方法 | ||
[特集] マルチデバイス対応アプリの可能性(後編) | ||
Live Meshアプリケーションを開発しよう | ||
1.Meshアプリの開発方法 | ||
2.Azureポータル上でのMeshプロジェクトの作成 | ||
3.Meshアプリのデバッグ/実行 | ||
4.Meshアプリ開発環境の構築 | ||
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|
キャリアアップ
未来展望台コーナースポンサーからのお知らせ
- - PR -
- - PR -
転職/派遣情報を探す
「ITmedia マーケティング」新着記事
SEOは総合格闘技である――「SEOおたく」が語る普遍のマインド
SEOの最新情報を発信する「SEOおたく」の中の人として知られる著者が、SEO担当者が持つべ...
HubSpot CMSにWebサイトの「定石」を実装 WACUL×100のパッケージ第1弾を提供開始
WACULと100は共同で、Webサイトの「定石」をHubSpotで実装する「Webサイト構築パッケージ...
電通調査で「料理は面倒」が6割超 なぜそうなった?
電通の国内電通グループ横断プロジェクト「電通 食生活ラボ」は、「食生活に関する生活者...