マイクロソフト、Progressive Web Apps(PWA)をWindows 10のデスクトップで実行可能に。Windows 10はWindows、Linux、PWA対応のプラットフォームへ
マイクロソフトはWeb技術を用いてネイティブアプリケーションのように動作するProgressive Web Apps(PWA)を、WebブラウザのEdgeにとどまらず、Windows10のデスクトップ環境でも実行可能にすることを明らかにした。
Windows 10は当然のことながらWindowsアプリケーションを実行可能なOSですが、Windows Subsystem for Linuxが新たに搭載されてLinuxアプリケーションのサポートも進められています。
そしてマイクロソフトはさらにWindows 10の守備範囲を広げようとしています。次はWeb技術を用いたアプリケーション、「Progressive Web Apps」(以下WPA)のWindows 10でのサポートです。
Microsoft Edgeの開発ブログに2月6日付でポストされた記事「Welcoming Progressive Web Apps to Microsoft Edge and Windows 10 - Microsoft Edge Dev Blog」でマイクロソフトは、PWAをWebブラウザのMicrosoft Edgeでサポートするだけでなく、Windows 10のデスクトップ上で通常のアプリケーションのように実行可能にすることを明確にしました。
On other platforms, PWAs primarily originate from inside the browser, and can escape the browser in response to various prompts or menu options. We’re taking things one step further on Windows! Because a PWA can be a first-class citizen in the Windows Store, a user will be able to engage fully with an installed PWA—from discovery, to installation, to execution—without ever opening the browser.
他のプラットフォームにおいては、PWAはブラウザ内で起動し、何らかの操作やメニューを選択することでブラウザから独立して実行されるようになる。しかし私たちはWindowsにおいてこれをさらに前進させていくつもりだ! というのもPWAはWindows Storeの一級市民になれることで、そこで発見されインストールされ、ブラウザを一度も立ち上げることなく実行することができるようになるのだ。
下記のツイートでは、この記事の筆者の一人がプレビュー版のWindows 10のデスクトップ上で、まるで通常のアプリケーションのようにPWAを実行する様子を紹介しています。
なぜWindows 10で積極的にPWAをサポートするのか
PWAは、HTML、CSS、JavaScriptなどのWeb技術によって開発されたWebアプリケーションの一種です。Webサーバから配信されて実行されるだけでなく、アプリケーションの実行に必要なリソースをローカルに保存することでオフラインでの実行にも対応します。
Service Workerによるバックグラウンド処理やプッシュ通知なども可能で、ネイティブアプリケーションのように振る舞うことができるようになっています。
そしてPWAはWeb技術で開発されているため、マルチプラットフォーム対応でもあります。
現在のところ、PWAはモバイルを中心に新しいアプリケーションの姿として注目されていますが、デスクトップアプリケーションの分野での注目度も高まってくるでしょう。
例えば、Web技術でデスクトップアプリケーションを開発するためのフレームワークのElectronやCordovaなどと基本的な技術は重なっているため、いずれこれらのフレームワークを用いているアプリケーションの一部がPWAに切り替わるかもしれませんし、もしかしたら、将来的には多くのアプリケーションが、PWAになっていくかもしれません。
こうしてマルチプラットフォーム対応であるPWAが普及、発展していくすると、そのプラットフォームは「PWAさえ動けばどれを選んでも似たようなもの」となっていく可能性があります。
こういう状況はWindowsの存在意義をおびやかすことになります。PWAさえ動けば別にプラットフォームはWindowsでなくともAndroidでもいいし、PCでなくてもタブレットでもよい、となってしまうかもしれないのです。
マイクロソフトはこうした状況を想定して先手を打ち、Windows 10をPWAにとってもっとも魅力的なプラットフォームへと進化させ、PWAが普及したとしても「やっぱりPWAを動かすのもWindows 10がいいよね」とするために、積極的な施策を打ち始めていると考えられます。
Windows 10、次の大型アップデートでPWAをサポート開始
マイクロソフトはWindows 10におけるPWAサポートに関して、大きく2つの施策を実行しています。
1つ目は、PWAを構成する最新のWeb技術に対する積極的な取り組みです。
マイクロソフトは半年ごとにWindows 10の大型アップデートを行っており、次は今年の3月か4月に行われる予定です。そして、その大型アップデートのプレビュー版Windows 10にはPWAを構成する重要な最新技術、Service Workerとプッシュ通知が組み込まれ、デフォルトで利用可能になっていることが明らかにされました。
ほぼ間違いなく、Windows 10の次の大型アップデートでPWAのサポートが実現するでしょう。
ただし、PWAを構成する技術はまだ初期段階にあり、今後さらに発展していくはずです。PWAのサポートもそれに沿って充実していくはずです。
そして2つ目は、Windows StoreでのPWAサポートです。先に引用したとおり、マイクロソフトはWindows Storaに優れたPWAをどんどん登録しようとしています。
これもWindows 10の次の大型アップデートのタイミングで開始されています。
つまり、来月か再来月に迫ったWindows 10の次の大型アップデートでは、Windows StoreからPWAをインストールし、Windowsデスクトップで実行するという、通常のアプリでできることがおそらくPWAでも実現されるのです。
かつてマイクロソフトは、WindowsデスクトップでWebアプリケーションをサポートする「Active Desktop」と呼ばれる技術をWindowsに組み込んだことがありました。1990年代後期のことです。
Netscapeとの激しいブラウザ戦争を戦うために鳴り物入りで発表されたActive Desktopですが、当時はまだHTMLもJavaScriptも貧弱な機能しか備えていなかったためにそれほどたいしたこともできずフェードアウトしていきます。
Windows 10によるデスクトップでのPWAサポートは、20年ぶりにActive Desktopのコンセプトが帰ってきたのかと思わせるものがあります。そうか、あれから20年もたったのですね。
カテゴリ 開発ツール / 言語 / プログラミング
あわせてお読みください
- Angular座談会(前編)。コンポーネントの設計はどうする? モジュール分割の方法は? ビルド遅くない? 開発者が生々しく語る現場の悩みとは。ng-japan 2017
- PhoneGap/CordovaがAPIの更新をめぐって意見を募集中。Web開発環境において、後方互換性の維持と最新の標準対応をどうバランスさせるか
- マイクロソフトの新しいレンダリングエンジン「Edge」、新ブラウザ「Project Spartan」「次期IE」両方のデフォルトに
- マイクロソフト、隔離されたブラウザ実行環境でマルウェア被害を防ぐ「Windows Defender Application Guard for Microsoft Edge」発表。Microsoft Ignite 2016
- マイクロソフト、JavaScriptエンジンのChakraをオープンソースにすると発表。その狙いは?
前の記事
Googleが「大阪GCPリージョン」開設を発表、2019年から。東京GCPリージョンに次いで国内2カ所目