脱プラットフォーム依存! 「Windows 10」でアプリ実行環境と開発環境はこんなに変わる:「Visual Studio 2015」で新世代アプリ開発を始めよう
「Windows 10」では、アプリの実行環境と開発環境が大きく変わり、1つのアプリでより幅広いユーザー層へリーチできるようになる。そのポイントを整理してお届けする。
Windows 10で整備される共通アプリプラットフォームに注目
2015年7月29日、いよいよMicrosoftの新OS「Windows 10」がリリースされる。アプリ開発者にとっての注目は、従来のWindows OSと異なり、Windows 10世代のOSでは「Universal Windows Platform(UWP)」として共通のプラットフォームが整備されることだ。
これにより、PCやタブレットだけでなく、スマートフォン(Windows 10 Mobile)からゲーム機(Xbox One)、AR機能をサポートした新型ヘッドマウントディスプレイ「HoloLens」、大画面デバイスの「Surface Hub」、果ては組み込みの小型機器(IoT)まで、Windowsファミリー全体を横断して1つのアプリが共通動作できるようになっている。
つまり、一度UWP向けにアプリを記述さえすれば、さまざまな種類のデバイスでそのまま動作するというわけだ。これは、従来のスマートフォンやPC向けOSには見られなかった大きな特徴だ。
これはアプリ拡販のための「ビジネスチャンス」であり、異なるデバイスで同一アプリを動作させられることで業務効率の向上や管理運用面でのメリットも期待できる。あるいは「UWPならではのユニークなものを作り出す」ことで、自分の実力を試す場と捉えるのもいいだろう。Windows 10とUWPアプリを開発する環境がそろった今このタイミングで、ぜひ可能性を模索していただきたい。
デバイスを横断して共通のアプリが動作する「UWP」とは?
UWPの大きな特徴としては、「さまざまなプログラミング手法をカバーすること」が挙げられる。例えば、Windowsで標準的なC++やC#などのプログラミング言語だけでなく、HTML+CSS+JavaScriptによるWebプログラミング手法をサポートしているのだ。
このほか、Windows 7以前の「クラシック(Classic)」と呼ばれる従来型のデスクトップアプリケーションをUWPアプリとして動作させる「Project Centennial」、Webページをそのままアプリ化する「Project Westminster」、JavaやC++で記述されたAndroidアプリをそのままUWPアプリとして変換する「Project Astoria」、Objective Cで記述されたiOSアプリをUWPアプリへと移植可能な「Project Islandwood」などを用意する。
UWP以外の世界でアプリ開発に親しんでいた開発者に対してもWindows 10の世界への門戸を開くべく、さまざまな仕掛けが用意されているのは重要なポイントだ。
もう1つの特徴は前述の通り、「一度作成されたアプリはプラットフォームを横断してさまざまなデバイスで共通動作すること」となる。この仕組みについて、米Microsoftのサティア・ナデラCEOは「One Core」という表現をよく用いている。
One Coreとは「(プラットフォームを横断して)共通のOSコア、(アプリを利用する窓口となる)共通のアプリストア、(そしてそれを実現するための)共通のプラットフォーム」というように、Windows 8.1以前まではプラットフォームやデバイスごとに個別に存在していたものを、「Windows 10」と「UWP」をキーワードに1つへとまとめたことで実現したものだ。
もちろん、デバイスによって画面サイズや解像度は異なり、キーボードやタッチスクリーンなど搭載する入出力装置の違い、ハイエンドPCから小型の組み込み機器までマシンスペックの差は大きい。これら違いをアプリで吸収していくのは簡単な作業ではないが、一方でMicrosoft側も各種ツールの提供でその労力が最小限となるよう工夫している。アプリ開発者の腕の見せ所と言える。
ビジネス的な視点な点では、Windows 10のスマートフォン/小型タブレット向けOSである「Windows 10 Mobile」の登場により、OEMメーカー各社ではWindowsスマートフォン事業再参入の気運が高まっており、チャンスが広がりつつある。
Windows Phone 8/8.1の時代には参入メーカーが減少し、Microsoftが買収したNokiaの「Lumia」シリーズがシェアのほとんど握るという状況になり、日本に至ってはデバイスそのものが発売されずにいた。しかし今、日本ではマウスコンピューターのWindows Phone端末「MADOSMA」が発売され、今年後半をめどに各社がWindows Phone 8.1ならびにWindows 10 Mobile端末を世界の各市場へと投入しようとしている。
もちろん、現状のスマートフォン世界シェアで言えばAndroidやiOSが圧倒的であり、現状でWindows Phoneのシェアは数%程度だ。しかし、人々の注目がWindows 10へと集まり、Windows 10 Mobileの可能性が見直される中、これを機会にプラットフォームの先駆者として活躍できるチャンスとも言える。スマートフォンだけでなく、PCユーザーを主要なターゲットに据えるのもいいだろう。
いずれにせよ、間口が広がったことでアプリが対象とする潜在的なユーザーの数は増え、さまざまな開発者を受け入れる余地も広がったのが「Windows 10」と「UWP」の世界だ。
UWPアプリの開発に必要な「Visual Studio 2015」
このUWPアプリを開発するために使うツールが「Visual Studio」だ。Windows 10の世代では「Visual Studio 2015」となり、Windows 10に先行する形で2015年7月20日に正式版の提供が開始された。
これまでのVisual Studioでは、開発規模やライセンス形態に応じて「Community」「Professional」「Premium」「Ultimate」の大きく分けて4つのエディションが存在していた。これがVisual Studio 2015の世代になると「Community」「Professional」「Enterprise」の3つへと統合され、これに付随するMSDNサブスクリプションのライセンス形態も変化する。
Communityは昨年2014年秋に発表されたばかりの新しいエディションで、個人開発者や小規模な開発チームでの利用を想定した無償版のVisual Studioだ。従来まで無償版開発ツールとして「Visual Studio Express」が提供されていたが、Communityはその上位版にあたるProfessionalに近い形で機能強化が行われており、より使いやすくなった。
基本的にCommunityとProfessionalでの機能面での差はないが、Professional版では利用にあたってのライセンス制限がないのに対し、Community版は商用利用で制限がついている点で異なる。また従来まで、Professionalの上位版としてテスト系機能を強化したPremiumと、フルセット版にあたるUltimateの2種類が用意されていたが、これはVisual Studio 2015世代ではEnterpriseという1つのエディションに統合される。
位置付けとしては、入門や個人での開発にはCommunity、標準的な小中規模の開発にはProfessional、より大規模な開発にはEnterpriseという切り分けとなる。
そしてUWPアプリの開発には「Windows 10開発者ツール(developer tools)」が必要となる。「Windows 10 SDK」と「Windows 10モバイルエミュレーター」の2つで構成されており、これをVisual Studio 2015と組み合わせることで、UWPアプリの開発およびテストが可能になる。
現在はプレビュー版での提供となっているが、Windows 10が正式リリースされる7月29日以降に開発者ツールも正式版へとアップデートが行われる見込みで、引き続きチェックしておくといいだろう。
MSDNと上手に付き合うことが、Windows 10アプリ開発のポイント
Visual Studioの説明を読んでいると、「Visual Studio Professional with MSDN」や「Visual Studio Enterprise with MSDN」のように製品名に「MSDN」の名称を冠しているのを見かけるだろう。
「MSDN(MicroSoft Developer Network)」は有償のサブスクリプションサービスであり、契約することで開発に必要なドキュメントや資料、そしてMicrosoftのソフトウェア利用権を得られる。特に後者が重要で、MSDNの各エディションで許可された範囲のWindows OSやOffice、各種サーバソフトウェアをインストールして利用できる。
MSDNは個別契約も可能だが、基本的にはVisual Studio 2015とのセットで利用するのが一般的だ。ただし、ProfessionalとEnterpriseのエディションで、MSDNサブスクリプションの適用範囲が異なっており、例えばProfessionalに標準で付属するMSDNでは「Microsoft Office」のインストール権がないなどの違いがある。逆にEnterpriseはフルセット版であり、すべてのMicrosoftソフトウェアが対象だ。
MSDNライセンスの特徴としては、開発者1人に1ライセンスが必要になることが挙げられる。1つのライセンスを複数の開発者で使い回すことは不可能なため、基本的に開発チーム全体でライセンス契約を行う仕様だ。
サブスクリプション料金については、複数年一括契約や指定期間内(90日以内など)での更新を行うことで、通常に比べて半額近くに料金が下がったりと、継続し続けることで安くなるメリットがある。そのため、計画的にライセンスを維持して全体のコストを抑えることも可能だ。
これからWindows 10のアプリ開発を始める場合の作戦としては、Visual Studio CommunityでWindows 10やUWPの世界に触れつつ、アプリ開発の可能性を探り、実際に本格的なアプリ開発の参入にあたってはMSDNサブスクリプションの付属したProfessional版を契約していくというのが自然な流れだろう。そして必要があれば、上位エディションのEnterpriseを検討してみるのも手だ。
関連記事
これから買うなら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年8月12日
Copyright © ITmedia, Inc. All Rights Reserved.