6月26日、Windows 8.1のプレビューが公開された。また米・サンフランシスコでは、開発者向けのイベントである「Build 2013」が開催されている。
見た目の変化は少なくても
内部的な変更は多いWindows 8.1
事前にWindows 8からの変更点についてブログで発表があり、スタートボタンやデスクトップへの直接起動など、あまり大きな話題はないと思われていたWindows 8.1だが、Buildに参加してセッションでの説明を聞くと、APIが強化されており、内部的な変更は大きいものであることがわかった。
パソコンを使うだけのユーザーからすると、わずかにしか違ってないように見えるものの、開発者からみるとこれまで欲しかった機能が装備されていたり、同じ機能でもパフォーマンスが向上しているなど“うれしい”機能が数多く用意された。
このため、一般ユーザーには、当初はユーザーインターフェース(あるいはユーザーエクスペリエンス)のわずかな変更しかメリットがないが、Windows 8.1のAPIを使ったアプリケーションが登場することで次第にメリットが増えていくことが予想できる。
また、事前に発表されなかった、“目で見てわかる”機能ももちろんある。強化されたInternet Explorer 11の搭載や、SkyDriveがファイルツリーに統合され、ローカル/リモートの区別なくファイルを扱える点など、すぐに享受できるメリットも多数用意されている。
主要な改良点はAPIセットからしか見えない
Windows 8には、主にデスクトップ環境で利用する従来型のWin APIと、おもにModern UI環境で利用するWindows Runtimeという2つのAPIがある。ただし、Win APIの一部はModern UIでも利用できるし、Windows Runtimeの機能もデスクトップ環境の.NET Frameworkから使うことができる。
Windows 8.1には多数のAPIが追加されており、これまでできなかったことを可能にするだけでなく、プログラム開発を容易にしたり、あるいは「パン」動作(画面などを横スクロールさせて多数の項目を表示すること)を高速化するなどの強化が行われた。
上の写真には、Windows 8にある機能(緑)、Windows 8.1で追加された機能(青)、8.1で強化された機能(黄緑)などがある。また白い枠がついているのは、デスクトップ側でも利用可能な強化点のあるAPIカテゴリだ。見た目の変更がスタートボタンやデスクトップ起動といったわずかな部分でしかないのに比べるとAPIは大きく「変化」したといってもいいだろう。
Windows 8.1のランタイムの変更点を解説するセッションでは大きく9つのポイントが示された。初日のセッションなので、レモネードショップの専用アプリを作るという仮定でさまざまなWindows 8の新機能を見せ、そのあとのセッションへと誘導するためのものだ。
たとえば、「Hub Control」は、Windows 8に標準で付属するストアアプリケーションのように横スクロールする画面に複数のセクションを配置していくための「部品」だ。これを使うことで、Windows ストアアプリケーション的なアプリを簡単に作成できるようになる。
Hubとは、Windows Phoneで導入された概念で、複数の情報をまとめるページ的なもの。たとえば「Picture」ハブでは、ローカルの画像やSkydrive上の画像、その他の画像サービスや関連する機能などを横スクロールする1つの画面にまとめてある。
モダンアプリケーションは、スナップ(画面分割)で複数アプリを表示できるものの、基本は全画面を使うアプリだ。このため、Hubのようなまとめページを作り、ここを起点に関連するアプリや情報にアクセスできたほうが便利だ。また、ローカルに関連する機能がなくとも、情報をカテゴリ分けして表示するような場合に便利なコントロールである。
ところが、これまでは他のコントロールで似たようなページを作ることはできたものの、Hubと同じようなページを簡単に作ることができなかった。ある意味、これがWindows 8が持っていた問題点だったといえる。代表的なアプリケーションと同じようなアプリケーションを作るのが簡単ではなかったのだ。しかしWindows 8.1では、Hubコントロールを提供することで、こうした要望に応えた。Windows 8.1の改良点の一部は、こうした開発者からの要望やフィードバックに答えたものになっている。そういうわけで、開発者の“ウケ”がよかったわけだ。
Windows 8リリースの時点では
開発環境はそもそも見切り発車だった?
ここまで説明したことを簡単に言えば、Windows 8にはいくつもの不足していた点があったのだ。機能が提供されながら、デスクトップ側での複雑なプログラム開発が必要で、Modern UI側では利用できなかったものがある。
デバイスの制御も、Windows 8.1で可能になったものが多い。Windows 8.1からは、ストアアプリケーションでBluetooth 4.0対応のデバイスアプリケーションを開発できる。Bluetooth 4.0には、低消費電力の「Smart」デバイスと、これを制御できる「Smart Ready」ホスト(コンピュータ)がある。SmartReadyのホストは、デバイスアプリケーションを使うことで、Smartデバイスを制御できるようになる。Windows 8.1は、その開発がストアアプリケーションでもできるようになった。
Windows 8をプレインストールして搭載したPCには、Bluetooth 4.0を搭載しているものがあるが、どれも「SmartReady」を謳っていなかった。また、Windows Phone 8もSmartReadyではなかった。これは、Windows 8の環境では、ドライバなどの開発が必要で、簡単には、デバイスアプリケーションを作れなかったという事情があったのではないかと思われる。
ある意味、こうした機能は、Windows 8には、間に合わなかったさまざまな機能を追加したのがWindows 8.1で、過去の例でいえば、Windows 98に対するWindows 98 Second Editionという位置づけにあるような感じだ。