編集部からのお知らせ
新着記事まとめPDF「IBM分社のキンドリル」
ZDNet Summit 2021開催のご案内

「Office」のクロスプラットフォーム開発を成功へ--開発者が明かすマイクロソフトの挑戦 - (page 2)

Mary Jo Foley (Special to ZDNet.com) 翻訳校正: 石橋啓一郎

2014-10-29 06:00

 「物事を正しく進めれば、古いコードを持っていることは有利に働く。なぜなら、『正しいこと』をするのを強いられるからだ」とZaika氏は言う。

 目標は、すべてC++で書かれた共有コードの知的財産権(Officeの心臓部分)を維持しながら、共有部分をできるだけ大きくすることだ。これによって、ドキュメントが壊れるリスクを抑えることができる。その中核部分の上に、各OSごとのユーザー体験を実現するアプリケーションプログラミングインターフェースのセットがある。Zaika氏によれば、Officeの各バージョンのUI部分は、HTML5では書かれておらず、中間層や専用フレームワークなどは存在しないという。また開発チームは、1つの大きな抽象化層や異なるエミュレーション層ではなく、複数のPALを作成している。

 JavaやFlash、HTML5などのテクノロジは、「一度書けば、どこでも実行できる」という目標を、抽象化のレベルをできる限り低く押し下げるか、アプリケーションプログラミングインターフェース(API)を非常に広くすることで実現しようとしており、これはうまく行くように聞こえるが、インピーダンスの不整合を作り出すことになるという。中でも、互換性と相互運用性の問題が大きい。

 「自分が吹っ飛ぶか、OSが吹っ飛ぶかのどちらかだった」とZaika氏は言う。


 Officeチームが作っているような小規模なPALを用いれば、サポートするOSごとのアプリケーションに期待される性能や文脈との整合性を満たすことができる。同氏の話では、Microsoftはプラットフォームに新しい機能が追加されるごとに、PALを進化させていくつもりだという。このアイデアは、各OSによって異なる性能やスレッド、その他の制約に合わせて作ろうとするのではなく、すべてのプラットフォームに合ったAPIを作成するというものだった。同氏によれば、これが、新しいOfficeの設計の一部として、クロスプラットフォームの開発アーキテクチャを作った理由と方法だ。


 Microsoftは共通のC++のコア、ネイティブの薄いユーザー体験層、そして進化するPALによって、Officeアプリケーションを比較的小さい調整のみで異なるOS上で動かせるように作っている。Zaika氏は「PowerPoint」を例として挙げ、その数千万行に及ぶコードのうち、WinRT/ユニバーサル版のOffice(「Gemini」とも呼ばれているタッチ操作に主眼を置いたOffice)に特有の部分は4%しかないと語った。XAMLのコードを除外すれば、共有コードの量は98.6%だという。また、Android用PowerPointのコードベースには、共有コードが95%含まれている。

 Microsoftは、今後2カ月以内にAndroidタブレット用のOfficeを世に出すとみられる。また、次期バージョンのWin32用デスクトップ向けOfficeアプリケーション(開発コードネーム:「Office 16」)を社内でテストしている。Office 16の公開テスト版は、すぐに公開されてもおかしくはないが、最終バージョンは2015年の春になると言われている。タッチ操作重視のWindowsストア/メトロスタイル(「ユニバーサル」/WinRT)版Officeも、2015年春に発売されるとうわさされている。

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

特集

CIO

モバイル

セキュリティ

スペシャル

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNet Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]