初見Microsoft は、ソフトウェア開発ツールの開発 20 周年を記念して Visual Studio 2017 をリリースしました。
Visual Studio 97 は、1997 年 3 月 19 日にリリースされました。Professional と Enterprise の 2 つのエディションがあり、Visual Basic 5.0、Visual C++ 5.0、Visual J++ 1.1、Visual InterDev、Visual FoxPro が含まれていました。
マイクロソフトはVisual Studio 2017をリリースした。
これらの製品はすべて異なるIDEを使用していたため、当時「Visual Studio」という名称は誤解を招きやすく、「Visual Bundle」という名称の方が適切だったでしょう。最終的には統合が実現したため、これは意図表明と捉えるべきだったかもしれません(ただし、Visual J++、Visual InterDev、Visual FoxProは途中で廃止されました)。
また、Microsoftが主流のビジュアルプログラミングツール、つまり視覚的にコードを記述できるツールをリリースしていないことも注目に値します。むしろ、これらはGUI駆動型の開発ツールです。IBMなどのVisualAge SmallTalkによる果敢な努力にもかかわらず、ビジュアルプログラミングは普及しなかったことを考えると、これはむしろ好ましいことと言えるでしょう。
Visual Studioは全体としてすぐに成功を収めました。Microsoftプラットフォームの開発者のほとんどが必要なツールをすべて利用できるようになり、パフォーマンスと安定性に関する問題が依然として存在していたにもかかわらず、その有効性が証明されました。
とはいえ、長年にわたり多くの方向転換がありました。ツールは次々と登場しては消えていきました。最近の例としては、データベースアプリケーション向けの高速開発ツールであるVisual Studio LightSwitchが挙げられます。このツールは、本来であればもっと良いものになるべきでしたが、マーケティングやドキュメントの不備、そしてMicrosoftが現在廃止しているブラウザプラグインであるSilverlightへの依存といった問題を抱えていました。
Visual Studio 2017 の新機能は何ですか?
このバージョンのハイライトは、以前のバージョンよりもモジュール化された全く新しいセットアップです。つまり、初期インストールは迅速かつ軽量で、必要に応じて機能を追加できます。プレリリース版での使用経験から、このアプローチは従来のモノリシックなセットアップよりも迅速であることが確認されています。
Visual Studio 2017 インストーラー (クリックして拡大)
次に、Microsoftはクロスプラットフォーム開発に力を入れており、これは新しいVisual Studio全体に反映されています。Visual C++はAndroidだけでなくLinuxもターゲットにできるようになりました。.NETのクロスプラットフォーム版である.NET Coreが統合されており、いくつかのチェックボックスをオンにするだけで、Visual Studio内からLinux向けWebアプリケーションを構築し、Dockerコンテナ内でデバッグすることができます。
.NET Core のコンパイルと Docker でのデバッグ (クリックして拡大)
Visual Studio開発者にとって興味深いもう1つの.NET Coreの特徴は、完全な.NET Frameworkよりも高速なパフォーマンスです。しかし、既存のASP.NETアプリケーションの移植は容易ではなく、特にASP.NET MVCではなく古いASP.NET Webフォームを使用している場合はなおさらです。
.NET を使用したクロスプラットフォーム モバイル開発用の Xamarin ツールが統合されており、Xamarin Forms のプレビュー機能も含まれています。Xamarin Forms を使用すると、Microsoft の XML ベース言語である XAML を使用してユーザーインターフェイスを定義できます。Xamarin Forms は、実行時に各プラットフォームのネイティブコントロールを使用します。Xamarin Forms では、ユニバーサル Windows プラットフォームもターゲットにできるようになり、Microsoft は今年後半に Mac デスクトップのサポートを約束しているため、これは戦略的なテクノロジーです。このエディターは改善されていますが、Visual Studio の他のフォームビルダーに比べるとまだ大きく遅れをとっています。
Xamarin Forms で使用される XAML は、UWP で使用される XAML や Windows Presentation Foundation の XAML と互換性がないため、どちらが将来的に主流となるのかという疑問が生じます。Xamarin Forms は、単に様々な Windows 10 で動作するだけでなく、真にユニバーサルなアプリをサポートしているという点で魅力的です。一方で、Xamarin Forms は機能が限られており、開発者からはバグが多いという指摘もあります(先日オーストラリアで開催された Ignite イベントで、Microsoft は Xamarin Forms の 1,800 件のバグを修正したと発表しました)。とはいえ、デスクトップ Mac のサポートが間もなく開始されることから、C# 開発者にとって魅力的な選択肢となるでしょう。
このリリースでは、Visual Studio エディターが強化されました。新機能には以下が含まれます。
構造ビジュアライザー: 閉じ括弧の上にマウスを移動すると、ツールヒントに開き括弧の上にあるコード行が表示されます (便利な機能)。
すべてに移動:ソリューション内の任意のファイル、タイプ、メンバー、またはシンボルを検索します。ポップアップ結果ウィンドウで参照の種類別にフィルタリングできます。従来の「すべての参照を検索」機能は引き続き利用可能で、新しいフィルタリングおよび並べ替えオプションが追加されました。
新しい「すべてに移動」結果ウィンドウ
クリックして実行: ブレーク モードでコード行の上にマウスを移動し、その行まで実行するように表示される「クリックして実行」ボタンをクリックします。
例外ヘルパー: デバッグ モードで例外が発生したときにポップアップ表示される、新しい非モーダル例外ウィンドウ。
ライブ ユニット テスト: Enterprise エディションでは、コーディング中にテストとコード カバレッジの結果を確認できます。
軽量ソリューション ロード: ソリューション内のプロジェクトをオンデマンドでロードするオプション機能。1 つのプロジェクトのみで作業する必要がある場合にパフォーマンスが向上します。
Git サポートが改善され、プッシュ フォース、コミットの差異の表示、アップストリーム ブランチの設定解除 (追跡の停止)、SSH サポートがサポートされるようになりました。
ローミング拡張機能は、ローミング拡張機能マネージャーを使用して、優先する Visual Studio 拡張機能をクラウドに保存し、新しいインストールにすばやくインストールできるようにする新しい機能です。