今から備えるWindows Vista/7サポート終了――アプリ移行の鍵は「Visual Studio 2015」:Windows 10時代のアプリ開発に乗り遅れないために
Windows Vistaは2017年4月、Windows 7は2020年1月にサポートが終了する。まだ先の話と思うかもしれないが、旧世代アプリケーションの移行がスムーズに進むとは限らない。今からWindows 10世代の環境を見据えた移行ロードマップを立てておけば安心だろう。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
OSが「Windows 10」の世代になるとともに、アプリケーションの実行基盤や開発ツールも刷新され、新しい環境について情報収集を行っている方も多いだろう。
もし、自分が企業のシステム開発や管理に携わる仕事ならば、既存のアプリケーションがシステムの刷新とともにそのまま移行できるのか、あるいは移行でどのような不具合が起こるのかを知らなければいけない。
現時点で環境移行の猶予期間があっても、OSのサポート期間はバージョンごとに限りがあるため、将来的にどこかのタイミングで移行を見据える必要がある。本企画では「既存アプリのライフサイクル」「新環境への移行やポーティング」「モバイルファースト時代を見据えた開発」という3つのテーマでこの問題を考えていく。
IE対応アプリケーション移行の目安は2016年と2020年
先日、日本マイクロソフトの関係者にWindows 10の導入状況や今後懸念される問題について尋ねたところ、「Internet Explorer(IE)のサポートポリシーが変更される2016年1月12日が1つの山」だとの回答だった。
これは2014年8月に米Microsoftの公式ブログで発表されたもので、2016年1月12日以降、「Windows OSとそれに対応する最新バージョンのInternet Explorerのみをサポート対象とする」という内容だ。
その対応状況は下記にまとめたが、従来まで社内イントラネットのWebアプリケーションを継続動作させるために比較的古いバージョンのIEを維持していたような場合、ポリシー変更後はサポート対象外となってしまう。
Internet Explorerの新しいサポートポリシー | |
---|---|
Windowsプラットフォーム | サポート対象となるInternet Explorerのバージョン |
Windows Vista(SP2) | Internet Explorer 9 |
Windows Server 2008(SP2) | Internet Explorer 9 |
Windows 7(SP1) | Internet Explorer 11 |
Windows Server 2008 R2(SP1) | Internet Explorer 11 |
Windows 8.1 | Internet Explorer 11 |
Windows Server 2012 | Internet Explorer 10 |
Windows Server 2012 R2 | Internet Explorer 11 |
各OSがサポートするIEバージョンの組み合わせ
既にシェアが数%程度まで低下しており、2017年4月に延長サポートが終了するWindows Vistaは比較的問題ないと考えられているが、ここで大きな問題となるのはWindows 7だ。現在、デスクトップOSシェアの5割以上がWindows 7で占められているといわれ、企業を中心に多くのユーザーのプラットフォームとして存在している。
特に企業ユーザーでは、既にサポートの切れたWindows XPからの避難先として機能していることも多く、Windows 7の延長サポートが終了する2020年1月が移行の目安となる。2018〜2020年にかけて、Windows XPサポート終了時と同様の騒動が起こるかもしれない。
Windows 7のサポート終了については、既存のハードウェアやデスクトップアプリケーション資産もさることながら、企業のイントラネットで構築されたWebアプリケーションの移行が大きな課題になる。
Microsoft自身はまだ明確な方針を出していないが、IE11に搭載された「エンタープライズモード」のサポートが、Windows 7と同じ2020年の終了をめどにしているといううわさがある。その場合、Windows 8.1 Updateの延長サポート終了期限である2023年1月を待たずして、旧IE向けWebアプリケーションのサポートを主眼としたIE11の継続利用は難しくなるかもしれない。
2つのマイルストーンに合わせた移行ロードマップを立てる
2016年と2020年という2つのマイルストーンが設定されたことで、あらためて移行計画を考えてみたい。2016年1月までは実質的に半年を切っており、できる対策は限られる。ここでの旧IE向けWebアプリケーションへの対応は「IE11で動作可能にする」ということで、当面の問題は2020年のWindows 7延長サポート終了のタイミングまで回避される。
IEでは過去のバージョンのWebブラウザ間での表示に互換性を持たせるため、「ドキュメントモード」という仕組みを用いているが、一部仕様の解釈や動作の違いから互換性が完全ではなく、IE11ではこの問題を解決するために「エンタープライズモード」が採用され、比較的以前のバージョンの動作を忠実に再現するエミュレーションが行われるようになっている。
エンタープライズモードは管理者によるグループポリシーの設定で利用可能となるが、このIE11+エンタープライズモードと、社内のPCにインストールされたOS(Windows 7/8.1/10など)の組み合わせでアプリケーションが動作するかを確認することが必要だ。
ドキュメントモードならびにエンタープライズモードは旧IE向けWebアプリケーションの動作を100%保証するものではないため、ここで検証作業が必要になる。アプリケーションの規模や社内の展開状況にもよるが、さまざまなケースを想定してのテストは膨大な工数になるかもしれず、全てを手動で行うのはヒューマンエラーなども考慮して難しい可能性がある。
その場合、「Visual Studio Enterprise」(もしくはVisual Studio Test Professional)で提供される自動化テストツールを用いるのが効率がいい。反復テストに必要な工程を手動で記録して検証が行えるため、手動で同じ作業を繰り返す必要がなく、比較的手軽に利用できる。Webアプリケーションへの変更を最小限に止め、取りあえずIE11への移行を主眼にした作業を行うのが、2016年のサポートポリシー変更に向けた対策だ。
恐らくは、最も問題となるのが2020年のWindows 7延長サポート終了だ。前述のように、IE11の利用はこの時点で推奨されなくなるため、Microsoft Edgeなどのより新しい世代のWebブラウザへの移行が求められるようになる。
Edgeではドキュメントモードなど、旧IEの互換性に関する仕様を全て排除して業界標準のHTML5に完全準拠すべく開発が進められている。そのため、レガシーアプリケーションの動作はこの時点で保証外となり、本格的にHTML5に準拠したWebアプリケーションへの改修や書き直しが必要だ。
IE5やIE6の時代はWebアプリケーションにちょっとしたスクリプトを記述して高度な作業をさせたり、ローカルPCへのアクセスやActiveXを呼び出しての各種連携など、IE特有の拡張機能を使ったシステムが多数登場し、これが今日におけるIEの互換性問題やサポート終了による移行問題に結びついている。
EdgeではFlash Playerを除く、ActiveXなど全てのプラグインの利用が禁止され、VBScriptなどの独自拡張も廃止された。ゆえに2020年を目標においた移行策では、多少の変更よりも、新たにアプリケーションを書き直したほうが効率的な場合も出てくるはずだ。
より将来性を見据えたアプリケーション開発を
Windows 10で推奨の標準ブラウザがEdgeへと移行したことで、Webアプリケーションには従来バージョンのIEとの互換性よりも、Microsoft以外の競合他社のWebブラウザ環境での動作も想定した開発が求められるようになった。つまり、HTML5互換という視点では、Edge以外にもGoogle ChromeやMozilla Firefox、そしてApple Safariといったブラウザも動作対象に含まれる。
そして最も重要なのは、PC以外へのアプリケーション展開で、今後タブレットやスマートフォンの利用が企業でも増えるにつれ、これら複数のプラットフォームでの利用を想定する必要がある。Webブラウザ経由でイントラネットにアクセスするだけなら問題ないが、場合によってはインタフェースにネイティブアプリを用意する必要があるかもしれない。
方法の1つは、Windows 10で導入された「Universal Windows Platform(UWP)アプリ」だ。スマートフォンからPC、大画面スクリーンまで、Windows 10が動作するあらゆるデバイスに対応可能なアプリとなっている。
ただし、これではAndroidやiOSといった世間で一般的なスマートフォンOSでの動作が期待できない。Mac OS Xの環境でも同様だろう。
これらの対策としては、AndroidアプリをWindowsでも利用可能にする「Windows Bridge for Android(旧名:Project Astoria)」と、そのiOSアプリ版「Windows Bridge for iOS(旧名:Project Islandwood)」、そしてHTML5で記述されたWebアプリケーションをUWPアプリ化する「Windows Bridge for Web apps(旧名:Project Westminster)」というMicrosoft提供の仕組みがある。
とはいえ、「Windows Bridge」はあくまでUWPアプリへの移植を促すツールなので、AndroidやiOSといったプラットフォームごとにアプリを開発する手間は変わらない。
そこで登場するのが、HTML5でPCやスマートフォン向けのアプリを同時開発できる「Apache Cordova」や、Mono/MonoTouchから派生して.NETの流れをくむ「Xamarin」といったクロスプラットフォーム開発ツールだ。どちらもVisual Studioといったおなじみの開発ツールを活用しつつ、HTML5またはC#といった言語でのアプリ記述が可能だ。
関連記事
- 「Visual Studio 2015」で新世代アプリ開発を始めよう(3):「Visual Studio 2015」で旧世代のWebアプリケーションを新環境へ移行しよう
Windows 10では新世代の標準ブラウザであるMicrosoft Edgeの利用が推奨されているが、レガシーサポートとしてInternet Explorer 11も備えており、既存のWebアプリケーションを継続利用できるよう配慮されている。「Visual Studio 2015」は、既存アプリケーションを新環境に対応させる動作テストの効率化に有用だ。 - 「Visual Studio 2015」で新世代アプリ開発を始めよう(2):Windows 10の開発環境「Visual Studio 2015」はどのエディションを選べばいい?
Windows 10とともに登場した新しい開発ツール「Visual Studio 2015」は、製品構成が大きく変わっている。各エディションの概要をはじめ、開発規模や目的に合わせた選択ポイントを整理しよう。 - 「Visual Studio 2015」で新世代アプリ開発を始めよう:脱プラットフォーム依存! 「Windows 10」でアプリ実行環境と開発環境はこんなに変わる
「Windows 10」では、アプリの実行環境と開発環境が大きく変わり、1つのアプリでより幅広いユーザー層へリーチできるようになる。そのポイントを整理してお届けする。 - これから買うならUltimateかPremiumを選ぶべし!:Visual Studio 2015発売前の今だからおすすめする「MSDN最新購入ガイド」
Build 2015で発表があったように、Visual Studio Codeのプレビュー版提供など、オープンソース化がさらに進むMicrosoft。開発者にとっては必要なツールとサービスの提供が進み、ますます今後への期待も高まっている。 - 視覚的VR技術から動作を行うVR技術へ:進化するVirtual Realityの世界と入力装置としての「Leap Motion」
Oculus Riftから再び火がついたVirtual Realityの世界。さまざまなVRデバイスの登場により、視覚的VRから動作を行うVRへ新たな進化を見せています。 - WindowsユーザーのUnity開発をサポート:Unityの開発をさらに効率化! 「Visual Studio Tools for Unity」を利用する
Unityを編集する際には、規定では付属のMono Developを使います。しかしWindowsアプリケーションの開発者であればVisual Studioを使いたいところ。今回はそれをかなえる無償ツール「Visual Studio Tools for Unity」を紹介します。 - 2つのデバイスで新しい世界を体感:「Leap Motion」が「Oculus Rift」の“目”になる! 新体験を生み出すVRアプリケーション開発
「Oculus Rift」をかぶると、目の前に仮想空間が広がり、よりコンテンツに入り込んだ体験ができます。これに入力装置としての「Leap Motion」を組み合わせることで、リアリティある仮想空間を作ることが可能です。 - 雰囲気をプログラミングなしに体験:プログラムを書かずに試せる! 「Leap Motion」+「Unity」のアプリケーション開発
「Leap Motion」でアプリケーションを開発するには、いくつかの方法があります。ここではその中から「Unity」というゲームエンジンを使ってアプリケーションを開発する方法について紹介します。 - VRコンテンツをLeap Motion×Oculus Rift×Unityで始めよう!:進化した「Leap Motion」と「Oculus Rift」で広がるVR(Virtual Reality)の活用シーン
Leap Motionは米Leap Motionが開発・販売している、手や指の検出に特化したセンサーです。日本ではBBソフトサービスが提供をしています。2012年の発売以降、モーションセンサー市場の広がりに伴い、商業利用も増えてきました。 - 新年度に向けて準備する項目をチェック!:いちばん賢い買い方はコレだ! 次期「Visual Studio」に備えよう
2015年中の発売が予定されている「Visual Studio 2015」。一方、役目を終えようとしているTechNetやVisual Studio Express――新年度はどう備えるべきか。 - 2人のプロフェッショナルが語り合う:高橋忍(Microsoft)×轟啓介(Adobe)対談――進化するアプリ開発現場でデベロッパーとデザイナーの関係はどうあるべきか?
スマホやタブレットの普及により、業務アプリ開発の環境も変わりつつあるが、それに対応できる体制は整っているだろうか。この対談では日本マイクロソフトの高橋忍氏、アドビシステムズの轟啓介氏が、デベロッパーとデザイナー、それぞれの視点から、今後のアプリ開発における問題と解決策、そして理想について語り合う。 - コストを抑え、チャンスはモノに:iPhoneもAndroidも!! マルチプラットフォーム対応の開発ツールを導入しよう
iPhone、Android、そしてWindowsのデスクトップなど、複数のプラットフォームにアプリを用意するため、それぞれの開発言語やツールを学ぶのは大変です。そこで、1つの言語、1つのツールで複数のプラットフォーム向けに開発が行える方法を紹介します。 - Visual Studioで何ができる?:これから開発を始めるなら必見! より使いやすくなった「Visual Studio」
「Visual Studio」は高機能な総合開発環境(IDE)。特にCommunityエディションは有償であるProfessional相当の機能を備えながら、無償で利用できるのが特徴です。無償でできること、できないことを解説します。 - 盲点!? 1年契約で買うと高くつく:「MSDNサブスクリプション」を契約する上で押さえておきたい3つのこと
実はもったいない1年契約! コスパの良いライセンス購入でAzureの無償利用特典もある「MSDNサブスクリプション」を使おう。 - オンラインで見積書がすぐ取れる!:「モバイルファースト」を実現したい全ての方へ――開発者向けプロショップ“Developer Tools Store”が目指したこと
ソフトウェア開発の主流はPCからスマートデバイスへ――「モバイルファースト」時代のニーズに応える開発者向けプロショップ「Developer Tools Store powered by LICENSE ONLINE」がオープンした。これまでのオンラインストアと何が違うのだろうか? - 開発現場でのコミュニケーションをより円滑に:開発者でも覚えておきたい! 「初めてのPhotoshop」
大規模な開発になるほど人が多くなる開発現場。自分の考えを正確に伝えるために見た目のよい資料でプレゼンテーションを行おう!
関連リンク
提供:BBソフトサービス株式会社
アイティメディア営業企画/制作:ITmedia PC USER 編集部/掲載内容有効期限:2015年11月4日
Copyright © ITmedia, Inc. All Rights Reserved.