ツイッターで知った(教えてもらった)この記事、Windows Centtralの 『Microsoft’s Office apps for Android, iOS include surprising ties to Windows API』 というものです。
読めばよむほど「コレって すごい事かもしれない」と思ったので、ちょっとブログに書いてみました(最近、Insider Previewも無いし…)。
まず上の記事のタイトルなんですが、直訳してみると『iOS、Android向けのOfficeアプリにWindowsのAPIが使われている』って感じです。 読み進めると、iOS、Android向けのOfficeアプリをリバースエンジニアリングした人が見つけた興味深い内部構造について書かれています。
OfficeアプリにWindowsの「レジストリ」構造が入っている、描画にはDirect XのAPIが使われている
これって結構 驚きますよね。 新しいブリッジツールが密かに作られているかもしれない、しかもそれは既存の Win32向けアプリをポーティングしてシッカリ動く! という推測になるワケです。
なお、この記事では Xamarinの限界についても軽く触れられています
Xamarin, a powerful cross-platform tool which Microsoft bought last year, is pretty infamous among developers for its poor performance, because running the same code on completely different platforms is not an easy task.
(昨年 Microsoftが買収した Xamarinは、パワフルなクロスプラットフォームツールだが、開発者の間ではあまり有名ではない。 また1つのコードで異なるプラットフォームで動かすことは容易ではなく、パフォーマンスも振るわない)
既存の Win32プログラムを持ってる人にしてみれば UWP向けに1からアプリを作り直さなければいけないことも開発者を取り込めていない原因かも?とも書かれていたり…
従来のデスクトップアプリの開発者がそのまま フルUWPアプリを作成できる時代に?!
結局コレにいきつくのか、というところ。 従来のWindows向けのデスクトップアプリを作ってる人がそのまま Porting Tool を利用することで iOS、Android向けのアプリも作ることができて、描画にはDirect Xも利用可能。 となると一般の業務アプリ等のほかに ゲームアプリなど高速な描画が必要になるアプリも将来的には Direct Xで可能になるのでは?と記事には書かれています。
既存のワン・コード、フル・プラットフォーム
とにかく今 Windowsのストアアプリがガラガラ、UWPアプリの開発者が増えている気配がない。 という状況を見るに、Microsoftも とうとう重い腰を上げて「従来のデスクトップアプリのプログラムがあればストアアプリにできますよ」という仕組みを作り始めたのではないかというところです。
「え?でもそれって Project Centennial じゃない? もうあるじゃん!」と思った方もいるかもしれません。
でもこれは、「とりあえずストアアプリとして並べることができるようになるツール」ではなく、そこから一歩進んで 「iOS、Androidでも動く(たぶん Windows 10 Mobileでも動く)アプリになるポーティング・ツール」ということになります。 それを Windows Central の記事では full UWP と呼んでいるようです。
2017年6月現在、Windows 10 Mobileも実質的に「仕切り直しするのでは?」と言われているタイミングなので、やるならばこれと同じタイミングで新しいポーティング・ツールが出てくるようにも思います。
かなり新しい驚き(本当にこれが戦略として進められていくなら Ultimate と言えると思います)と、同時に今がんばってる人を切り捨てるかもしれない無慈悲さを併せ持ってるよう (Xamarinを置き換えてしまうわけだし…) で嬉しいのか悲しいのか難しいところです。
でも、Win32アプリは既存のものが大量にあるので、これをコンパイルしなおすだけで(実際はいろいろ大変とも思うけど) iOS、Android向けのアプリとしても機能する「フルUWP」アプリになれば興味を持つ人の数はかなり膨れ上がるのではないでしょうか?
従来のUWP(Universal Windows Platform)については(Project Centennialの場合 Mobile向けには動かないアプリになってしまうので)「どこがユニバーサルやねん!」という意見も散見されていたので、フルUWPになることで「これがユニバーサルだ!」と言えるようになりそうです。
ワン・コードはワン・コードでも、”既存の” ワンコード ってところが一番大事なキーワードになりそうです。
おわりに
とはいっても、これはあくまで Office アプリの中身を見たら WindowsのAPIが使われていた、という話から膨らんだ内容なだけの話でもあります。 これからどうなっていくのかはやはり時間を待たないことには分かりません。
リンク
・Microsoft’s Office apps for Android, iOS include surprising ties to Windows API – Windows Central