7から進められてきたWindowsプラットフォームの統合が
ついにWindows 10で結実
Windows 10は、これまでマイクロソフトが開発してきたOSを統合したものだ。Windows 10登場以前には、以下の表のようなOSがあった。これらのOSは、これまで段階的に統合の準備が行われてきた。
まずWindows自体、Windows 7でOSを構成するモジュールが整理され、起動できる最小構成となるminiWinが定義された。つまり、最も小さなWindowsが作られ、これにモジュールなどを追加していくことで、OSを構成できるようになった。またAPIを整理し、APIを処理するDLL(ダイナミックリンキングライブラリ)との関係を整理した。これにより構成の変更が可能になった。
これを受け、Windows 8(2012年8月)、Windows Phone 8(2012年10月)、Xbox OS(Xbox One用、2013年11月)では、同じNTカーネルを採用した。ただし、APIや実行環境など、カーネル以外の部分は、それぞれのプラットフォームで別々になっていた。
次のWindows Phone 8.1(2014年7月)では、Windows 8.1(2013年8月)のモダンUI環境と同じ「アプリモデル」を採用する。アプリモデルとは、ソフトウェアを開発する方法を定めたもので、 モダンUI環境には「.NETフレームワーク/C#」「ネイティブコード/C++」「WinJS/HTML5+Javascript」の3つのアプリモデルがある。
これにより、Windows 8.1とWindows Phone 8.1は、同じ言語、同じ開発環境を使って開発することが可能になった。ただし、Windows Phoneでは、Windows 8.1とソースコードを共有できる部分もあったものの、APIの違いなどから、完全に同一にすることはできなかった。実行環境の違いやストアの違いなどから、別々のパッケージを作成してWindowsストアとWindows Phoneストアに別々に登録する必要があった。
そもそも、Windows Phoneのアプリモデルは、Windows Phone 7/8/8.1でそれぞれすべて異なる。AndroidやiOSに比べて、アプリが少ないと言われるのは、そもそも、Windows Phone 7の時点で過去との互換性がなく、その後2回もアプリモデルが変更になったということもあるだろう。
もちろん、Windows Phone 7用のアプリを後継のWindows Phone 8で実行することはできたが、開発者からみると、プラットフォームとしての変動が激しすぎた。AndroidやiOSでもシステムのバージョンが変わるとAPIやGUIが変わることはある。しかし、アプリケーションの開発方法までもが、ガラリと変わることはなかったはずだ。
(次ページでは、「OSの中核となるWindows CoreとWindows 10で共通のAPIであるUWP」)

この連載の記事
-
第508回
PC
Scalable Vector Graphics(SVG)そもそも何なのか? -
第507回
PC
Windows 11の「開発者モード」とは何か? -
第506回
PC
Windows 11は早くも来秋登場の26H2プレビューの準備が始まる -
第505回
PC
結構変化しているWindows 11のエクスプローラーの基本設定を見直す -
第504回
PC
新しいOutlookとOutlook Classic、そろそろ古いOutlookとExchangeの組み合わせは引退の頃合いか -
第503回
PC
機能が増えたこともあり、寄せ集めから統合化に進むWindowsの便利ツール「PowerToys」 -
第502回
PC
Windows 11でBluetoothのオーディオ新規格「Bluetooth LE Audio」を試す -
第501回
PC
Windows 11 Ver.25H2での変更点、新機能を整理する -
第500回
PC
Windows 11 Ver.25H2が完成した -
第499回
PC
Windowsでの致命的だが回復可能なエラーに備える手段を2つ紹介 -
第498回
PC
Windows Terminalの安定版V1.23が公開 設定UIが改良される - この連載の一覧へ











