新しい Visual Studio のインストーラ: より高速、より軽量に、皆さまの開発ニーズに適応

 

本記事は、マイクロソフト本社の The Visual Studio Blog の記事を抄訳したものです。【元記事】 Faster, Leaner, Focused on Your Development Needs: The New Visual Studio Installer 2016/4/1

 

Visual Studio は、リリースのたびにそのパフォーマンスと機能を進化させています。モバイル用、クラウド用、デスクトップ用のアプリはさまざまな言語やフレームワークを使って構築されていますが、マイクロソフトはこれらのアプリを開発する開発者の皆様にとって必要なあらゆるツールを提供していきたいと考えています。現在 Visual Studio には、ランタイム、SDK、エミュレーター、ツール、ドキュメントなど、マイクロソフト製とサードパーティ製の両方のアプリ作成に必要な各種開発者向けツールが搭載されており、フル インストール版には数百のパッケージが含まれています。最新のコンポーネントがマシンに適切にインストールされるという点は Visual Studio の大きなメリットですが、一方、開発フレームワークが急速に進化しているという意味では、開発者にとって大きな負担となっています。

Visual Studio 2015 では、C++ のコンパイラとビルド ツールをオプション コンポーネントとして分離し、最小インストールのサイズをさらに削減しました。また、UserVoice (英語)、Twitter、Visual Studio の [Report-a-Problem] ツールを通じて皆様からフィードバックを募っていますが、その中で特に多かったご意見が次の 3 つでした。

  1. Visual Studio のサイズを軽量化し、ファイル数やディスク容量、システムの依存関係を削減してほしい
  2. Visual Studio のカスタマイズ性を向上させ、必要のない言語やフレームワークをインストールせず必要なもののみを容易にインストールできるようにしてほしい
  3. Visual Studio のインストール、更新、アンインストールを高速化し、予測可能性も向上させてほしい

この記事では、これらの課題にどのように取り組んだかについて詳しく説明させていただきます。

軽量化によるインストールの高速化

私たちは Visual Studio のコンポーネント構造と依存関係を改めて見直し、最小の「コア エディター」エクスペリエンスを作成しました。最小インストールのサイズは数百メガバイトに抑えていますが、一般的な言語や使用パターンに対応する主要機能は含まれています。

この「コア エディター」エクスペリエンスには、シェル本体、コード エディター、ネイティブなマネージ デバッガー エンジンが含まれており、ソース コード管理がサポートされています。また、完全なコンパイラをサポートすることなく多数のプログラム言語に対応できるよう、TextMate 互換の言語サービス (Visual Studio 2015 Update 1 から導入) が含まれています。このサービスは、C# や Visual Basic、Java、C/C++、HTML、JavaScript、Perl、PHP、Ruby、R、Swift、Go などの 20 以上の言語で基本言語の色付け機能、IntelliSense、シンボリック検索機能を提供します。このほか、ツールから [Open]、[Folder] の順に選択すると、Visual Studio プロジェクトやソリューションを作成せずに任意のコードベースに移動する機能が新たに追加されました。

こうした取り組みにより、最小インストール サイズは 6GB から 322 MB にまで削減されました。初期テストの結果によると、一般的な開発用マシンにこの構成をインストールした場合の所要時間はわずか数分でした。このコアエディター インストールに含まれている機能は完全版製品の一部ですが、カスタムの開発エクスペリエンスを構築するためのクリーンで信頼性の高い基盤となっています。

それぞれのユーザーに最適化

開発者が必要とするツールや SDK を一般的な開発者エクスペリエンスに合わせてコア エディターの上位階層にバンドルし、複数のパッケージを作成しました。これらのバンドルは精選されたプリセットと言えるもので、手軽にセットアップして実行したい場合に便利です。

今回リリースされた新しいインストーラーの初期プレビュー版には、.NET デスクトップ開発、Python、C++、さらに Unity でのゲーム開発に向けた 4 種類のバンドルがあります。これらのバンドルでは Visual Studio でサポートされている言語やフレームワークの一部のみがサポートされています。今後の更新では、インストールする機能をさらに細かく制御できるようにバンドルの微調整を進めていきたいと考えています。

clip_image002

以下は、新しいインストール環境の初回プレビュー版に含まれるバンドルを簡単に示したものです。

clip_image004

これらの開発者向けバンドルの設計の参考となるユーザー調査と、それぞれに含める機能をどのように決定するかという方針については、今後の記事で詳しくお伝えしたいと思います。

 

独立性と負荷低減の追求

マイクロソフトでは、Visual Studio のインストールを高速化し、信頼性と柔軟性を向上させるために、コア アプリケーションの配信方法を変更してきました。その際には、システムへの影響が最小限になるよう、Visual Studio にかかわるそれぞれのチームが一丸となって取り組んできました。これまでに実施したこととしては、グローバルアセンブリ キャッシュのアセンブリの削除、システム レジストリの使用量削減、Visual Studio アプリケーション本体のインストールの簡素化などがあります。詳しい内容については今後の記事でご紹介します。

これらの対応により Visual Studio のインストールやアンインストールが大幅に高速化され、柔軟性も向上しています。

 

注意事項と今後について

今回のリリースはあくまで初期プレビュー版であり、現在の Visual Studio のインストール エクスペリエンスを完全にカバーできるようになるにはまだまだ多くの作業が必要です。今後も新機能を投入したり、コンポーネント化やリファクタリングを進める作業を続けていく予定ですが、Visual Studio の機能セットをすべてインストールできる「従来の」インストーラーも引き続き提供していきます。

今回のリリースはプレビュー版ですので、インストーラーや製品には制限事項があります。詳細についてはリリース ノート (英語) を参照してください。この一覧の内容は、新たな問題が発見されるたびに更新されます。

Visual Studio ツールの多くはエミュレーターやサードパーティ製 SDK などのツール (英語) に依存しているため、完全版製品ですべてのオプションを選択すると、インストール サイズはギガバイト規模になります。このプレビュー版の開発は、必要なツールだけをすばやく、柔軟に、環境への影響を最小限に抑えて提供することを目指して行われたものであり、今後も引き続き取り組みを進めていきます。

マイクロソフトはこのリリースに関するフィードバックをお待ちしています。新しいインストーラーの [Send us feedback] リンク (英語) や Visual Studio 本体の [Report a Problem] からお気軽にご意見をお寄せください。また、新機能のご提案や既存の提案に対するコメントは、Visual Studio の UserVoice サイト (英語) までお願いします。皆様からのたくさんのご意見をお待ちしています!

 

clip_image006 Tim Sneath (Visual Studio Platform 担当主任プログラム マネージャー)Tim Sneath は Visual Studio の導入および拡張性を担当するチームの責任者で、開発者がマイクロソフトのプラットフォームで魅力的なアプリケーションを作成するための支援を行っています。また、プライベートでは母親にコンピューターは敵ではないことを理解してもらうために努力しています。さまざまなことに興味を持っていますが、中でも古い Windows リリースの収集に凝っていて、80 年台終盤からの各リリースの未開封パッケージをほぼすべて所有しているという一面を持っています。