写真提供:マイナビニュース

写真拡大

●最小限のコンポーネントならインストール時間は5〜10分程度
米Microsoftは3月7日(米国時間)、同社の統合開発ツールの最新版となる「Visual Studio 2017」正式版をリリースした。これを受けて日本マイクロソフトは17日、品川本社にてユーザーイベントを開催。Visual Studio 2017についてデモンストレーションを交えながら、その新機能などについて紹介した。

○「シフトレフト」の概念を意識したVisual Studio 2017

Visulal Studioの最初のバージョンである「Visual Studio 97」のリリースから、Visual Studioは今年で20周年を迎える。イベントに合わせて来日したMicrosoftのSRプロダクトマネージャーのマイケル・コースター氏は「この20年で多くのテクノロジーが変化し、開発者の仕事も変わってきているが、Microsoftとして20年変わらないことは、開発者を中心に考えていること。その考えを具現化したものが、Visulal Studioである」と語る。

コースター氏によると、今回のバージョンアップでフォーカスしたのは、開発者の生産性、業務の効率化、そして「シフトレフト」の概念だという。シフトレフトとは、プロジェクトの工程における開発全体の時間軸を左へ移し、従来最終段階でしか判断できなかった問題点をサイクルの早い段階で発見するというものだ。

以下では、これらを実現するVisulal Studioの新機能について詳細に見ていきたい。本稿では、日本マイクロソフト テクノロジースペシャリスト 武田正樹氏が「快速! Visual Studio 2017新機能で実現する開発生産性向上」と題して同イベントで講演した内容をもとに紹介する。

○快適な開発環境へ

Visual Studio 2017では、全体的なパフォーマンスが改善されており、より軽量な動作を実現している。大きな特徴としては、新しいインストーラーにおいて、必要なものだけをインストールできるようになり、インストール時間が大幅に短縮されたことが挙げられる。武田氏によるデモンストレーションでは、必要最小限のコンポーネント(3月17日時点で600MB程度)をインストールし、初期画面まで到達するのに要した時間は5分半程度。実際にはネットワークやハードウェア環境などにも依存するが、だいたい5〜10分あれば最小のインストールが完了するとのことだった。

ただし、ほとんどのユーザーは、さらに多くの機能が必要となるだろう。追加でインストールする項目は「ユニバーサルWindowsプラットフォーム開発」「.NET Coreクロスプラットフォームの開発」といったように、それに関連のあるコンポーネントをまとめた「ワークロード」単位で選択することができる。またコンポーネントをアンインストールする際、従来はコントロールパネルから操作する必要があったが、Visual Studio 2017ではインストーラウィンドウから構成変更することが可能となった。ワークロード別にアンインストールすることもできる。

インストール時間だけでなく、起動時間とソリューションの読み込み時間も短縮された。同社によると初回起動は50%以上速くなったという。さらに「ライトウェイトソリューションロード」という機能を有効にすることで、最初にソリューションをすべて読み込むのではなく、必要になった時にプロジェクトやファイルが読み込まれるようになり、起動時間や応答性の改善が期待できる。ただし、この機能はデフォルトでは無効となっているため、オプションから選択する必要がある。

またVisual Studio 2017では、起動やソリューションの読み込み、編集に影響を及ぼす拡張のパフォーマンスが監視されており、IDEの通知バーでパフォーマンスの良くない拡張機能についてアラートが表示されるようになった。さらに起動時のパフォーマンスに影響を与えているツールやウィンドウを検出して、起動時の読み込み方法を変更することも可能だ。大規模なソリューションでの作業において有効な機能となるだろう。武田氏は、「地味に喜ばれる変更点」であると話していた。

○広がる開発対象

Visual Studio 2017では、さまざまなプログラミング言語やプラットフォームに対応している点も特徴と言える。.NET Frameworkを用いたWindowsアプリケーションだけでなく、C++によるLinux対応アプリケーションの開発、クラウドアプリケーションやモバイルアプリケーションの開発も可能となる。

デモンストレーションでは、一例としてC++によるLinux開発について紹介された。よく利用される拡張機能だというVisual C++ for Linux DevelopmentがVisual Studioに組み込まれたことで、Linux環境で実行するC++アプリケーションの開発とデバッグに必要なすべてのものが提供される。

●コーディングや実装段階で問題点を発見することを可能に
○手戻りをできるだけ発生させないさまざまな新機能

コースター氏がイベント冒頭で紹介した「シフトレフト」とは、なるべく手戻りを発生させないよう、コーディングや実装段階で問題点を見つけようとする考え方。これをIDEとして実現するため、Visual Studio 2017ではいくつかの新機能が追加された。

例えば、コードナビゲーション機能に「すべてにジャンプ」や「すべての参照を検索」といったメニューが追加されたことにより、検索性が改善。また「Run To Click」という機能では、デバッグ時にコード行の隣にあるアイコンをクリックするだけで、その行が実行される。目的の行でコードの実行や停止が行われることで、一時的なブレークポイントを設定したり、複数の手順を実行したりする必要がなくなったため、デバッグの実行がしやすくなるというメリットがある。

また武田氏が「目玉機能の1つ」と紹介したのが、「ライブユニットテスティング」だ。これは、C#またはVisual Basicでコーディングを行う場合、バックグラウンドで自動的にユニットテストを実行してくれるという機能で、IDE上で単体テストの結果やコードカバレッジをリアルタイムに把握することができる。同機能について武田氏は、「シフトレフトの概念を忠実に適応しているもの」と説明する。ただし、これはVisual Studio 2017 Enterprise Editionのみの機能であるということに注意いただきたい。またテストフレームワークとして、MSTestV2を使う必要がある。

さらにリアルタイムで問題を検知する機能として、Enterprise Editionでは、「依存関係検証ダイアグラム」が用意されている。アーキテクチャ依存関係ルールをドラッグ&ドロップで依存関係検証ダイアグラムとしてあらかじめ作成しておくことで、同ルールに違反すると、コードエディターでコードを入力する時にリアルタイムでアラートが表示されるようになっている。

以上、Visual Studio 2017の目玉となる機能を中心に紹介してきたが、このほかにもモバイルアプリ開発やクラウドアプリ開発に向けた機能などが追加されている。無償版のVisual Studio 2017 Community、小規模開発チーム向けの同Professional、大規模開発まで対応する同Enterpriseの無償試用版はこちらからダウンロード可能。興味のある読者はぜひ試してみてほしい。

(周藤瞳美)