レビュー:Visual Studio2015が新境地を開拓

Visual Studioは常に大きな製品であり、リリースごとに多くの機能が追加されています。Visual Studio 2015は、マイクロソフトからは予想もしなかった方法でその傾向を拡張します。

クロスプラットフォームのモバイルアプリ開発?このボックスを少なくとも2回チェックします。1回はXamarin用、もう1回はCordova用で、ポータブルC ++とUnityとの統合に追加のクレジットがあります。

クロスプラットフォームサーバー?.Net Core、ASP.NetとEntity Framework、PythonとNode.jsの場合は、このチェックボックスを少なくとも3回オンにします。

クロスプラットフォームの編集とデバッグ?はい。Visual Studio Codeは、Mac OS X、Linux、およびWindowsで実行されます。

クロスプラットフォームのアプリケーションライフサイクル管理?GitとGitHubがサポートされており、MicrosoftはTeam Foundation ServerのGitサポートを拡張して、Team FoundationServerがバージョン管理システムに対して持っているのと同じ種類のスマートチェックインルールと継続的に統合できるようにしました。

クロスプラットフォームビルド?了解しました。Team Foundation Buildは、Visual Studio BuildとMSBuildの操作に加えて、Ant、Gradle、Maven、Android Build、Gulp、Xcodeなどを使用できます。

もちろん、Visual Studioは引き続きWindowsの開発をサポートしており、WindowsAPI呼び出しを使用してC ++で構築されたコンソールアプリから、Blend forで設計されたC#およびXAMLのWindows Presentation Foundationアプリまで、Windowsデスクトップアプリのすべての古いテクノロジが含まれています。 Visual Studio2015。ただし、Windowsの定義はWindows 10向けに拡張され、ユニバーサルWindowsプラットフォームアプリが使用されています。これらのアプリケーションは、電話からタブレット、ラップトップ、デスクトップ、Xboxゲームコンソール、拡張リアリティヘッドセット、Surface Hub、サーバー、クラウドに至るまで、ハードウェア上で変更なしで動作することを目的としています。その特定のビジョンがどれだけうまく機能するかはまだ分からない。

軽量のクロスプラットフォームオプション:Visual Studio Code

Visual StudioCodeはVisualStudioエコシステムの一部ですが、VisualStudioは適切ではありません。代わりに、オープンソースのAtomElectronシェルと多数のMicrosoftテクノロジを組み合わせた無料のクロスプラットフォームエディタです。私はMacOS XとWindowsでそれを使用しました、そして私はそれがとても好きです。UbuntuLinuxでも動作します。

単にAtomを使ってみませんか?TypeScript、JavaScript、C#、およびVisual Basicの場合、Visual StudioCodeは優れた言語サポートを備えています。サポートされている他の30の言語については、Visual StudioCodeはAtomと同等です。

完全なVisualStudioを使用してみませんか?十分な馬力を備えたWindowsマシンまたは仮想マシンがあれば可能ですが、Visual Studio Codeははるかに軽量なプログラムであり、起動が速く、コンピューターリソースの必要性がはるかに少なくなります。

Visual Studio2015の新機能

冒頭で述べたように、Visual Studio 2015には、クロスプラットフォームモバイル開発の広範なサポートが含まれています。ApacheCordovaのインストールと統合、Xamarinのインストールと統合、ポータブルC ++、拡張Androidエミュレーター、Unity統合です。

クロスプラットフォームサーバーアプリケーションを構築してWindowsサーバーとLinuxサーバーに展開したり、Mac OSXデスクトップとラップトップで実行したりできます。サーバーのサポートには、ASP.Net 5、Python、Node.js、およびWindows、Linux、Mac OSX用の新しいオープンソースの.NetCore5が含まれます。

Windows開発には、新世代のユニバーサルアプリ、新しい診断ツール、および新しい設計機能があります。生産性の分野では、ラムダのデバッグ、パフォーマンスの監視と履歴デバッグの同時実行など、より優れたデバッグがあります。エディターでは、Roslyn言語プロセッサーが、コードに共通の問題があるときにポップアップする電球に電力を供給し、自動コード修正と改善されたリファクタリングを提供します。一方、Visual Studio 2015には、PythonとNode.jsの拡張機能に加えて、C#、Visual Basic、C ++、TypeScriptなどの多くのプログラミング言語の更新があります。

Visual StudioOnlineとTeamFoundation Server 2015は、拡張性フックとTrello、Campfireなどとの統合を備えています。アジャイル計画機能には、かんばんボードとスイムレーンが含まれます。Visual StudioOnlineとTeamFoundationServerでコードの編集とコミットをすばやく実行できるようになりました。以前は、VisualStudioまたは別のコード編集ツールに戻る必要がありました。

Visual Studio2015エディションを理解する

Visual Studio 2015の多数のエディションは、レビュー担当者に目がくらむような頭痛の種を与えるのに十分です。短い要約:

  • コミュニティは無料です。このエディションは、ビジネスアプリを構築していない個々の開発者を満足させるはずです。
  • MSDNのProは$ 1,199です。このエディションは、プロの開発者やチームに適しています。
  • MSDNを使用するエンタープライズは6,119ドルです(Visual Studio Ultimate 2013よりはるかに安い)。これは、「高度なテストやDevOpsなど、あらゆる規模や複雑さのプロジェクトに取り組むチーム向けの高度な機能を備えたエンタープライズグレードのソリューション」です。つまり、すべての機能が備わっています。

無料のExpressSKUはまだ存在しますが、Microsoftは無料のCommunityエディションを使用することをお勧めします。MSDNを使用したTestProfessionalはまだ存在しており、Visual Studio Team Foundation Server2015のコピーを購入できます。

他のコード編集ツールと言えば、Visual Studio Codeは、オープンソースのAtom Electronシェル上に構築された無料のクロスプラットフォーム(Windows、Linux、およびMac OS X)コードエディターであり、RoslynおよびTypeScriptコンパイラからの深い言語サポートを備えています。 IntelliSenseレベルのいくつかに加えて、シンタックスハイライトおよびブラケットマッチングレベルの30を超えるプログラミング言語。

.Net Core 5は、クラウドに最適化されたクロスプラットフォームの.Netプラットフォームのオープンソース実装であり、現在Linux、Windows、およびMac OS Xをサポートしています。また、LinuxのDockerコンテナ内でも実行されます。.Net Coreは、.Net Frameworkのリファクタリングされたサブセットであり、ネイティブランタイムとCLR(アプリケーションVM)ランタイムの両方を備えており、WindowsストアとASP.Netアプリの両方をサポートしています。

ユニバーサルWindowsプラットフォームアプリは、さまざまなハードウェアで実行されるだけでなく、高速の.Netネイティブランタイムを使用します。C#、Visual Basic、C ++、およびJavaScript言語(Cordovaを含む)から選択して、XAML、DirectX、またはHTMLでUIを構築できます。Visual StudioでXAMLデザインを、5インチの電話から84インチのSurfaceHubまでのさまざまなデバイスサイズでプレビューできます。実行時に適切なAPIの存在を確認するコードでこれらの拡張機能をラップする限り、ユニバーサルアプリでデバイス固有の拡張機能を使用できます。Visual StudioでXAMLを設計できますが、XAML設計に適したツールは、改良されたBlend for Visual Studio2015です。

更新されたプログラミング言語

C#6とVisual Basic 14は、nameof式、null条件演算子、awaitincatchfinallyblocks、式本体の関数メンバーなど、いくつかの歓迎すべき言語の更新を提供します。

標準と移植可能なコードは、C ++ 11およびC ++ 14標準への準拠や、いくつかのC ++ 17機能の追加など、C ++言語の改善を示しています。C ++コンパイラは、コード生成とセキュリティのビルドと拡張が高速化されました。ビルドが、C ++コーダーがコーヒーの淹れ方、施設の訪問、卓球のプレイによく使用する拡張された「コンパイル」セッションを排除するのに十分な速さであるかどうかはわかりません。大規模なコードベースを新しいC ++コンパイラバージョンに移植し、必要なすべての回帰テストを実行するには、長い時間がかかる場合があります。

F#4.0は、F#コミュニティ開発者によってオープンに構築されました。開発者の約4分の1はマイクロソフトと提携しています。言語とツールには多くの改善がありますが、私にとって最も明白なものは、改善されたIntelliSenseとデバッグです。

TypeScript1.4およびTypeScript1.5(Beta)は、より多くのJavaScriptパターンを処理し、より豊富な型を作成し、新しいECMAScript6機能を使用するための新しい機能を引き続き構築します。

Visual Studio2015のインストール

VisualStudioのインストールがよりきめ細かくなりました。これが重要かどうかは、ニーズによって異なります。機能のサブセットのみが必要な場合は、インストールを高速化し、フットプリントを削減するだけでなく、を使用することもできます。いずれにせよ、すべてをインストールする場合は、すぐにインストールすることをお勧めします。部分的なインストールにはオンデマンドでピースを追加できますが、マーフィーの法則のバリエーションでは、最初にインストールしなかった機能はタイムクリティカルな方法で不可欠であるため、増分インストールは可能な限り最悪の時間に行われます。

Visual Studioが、ApacheCordovaに必要なAndroidおよびJavaSDKのインストールなどの基本レベルに至るまで、すべてのオープンソースの依存関係のインストールを処理するのを見て、私はうれしく驚きました。これらを手動でインストールすると、注文を間違えた場合にイライラする可能性があります。

部分インストールと完全インストールの両方のケースで、Windows 10 SDKがリリースされるまで、Visual Studio2015のインストールは以前のバージョンよりも危険やフラストレーションに悩まされることが少ないことがわかりました。Windows 10 SDKをインストールしたとき、そのXAMLデザイナ(よりクールな新機能の1つ)が新しい空のプロジェクトで失敗したことを発見しました。VisualStudioチームと約1日かけて問題のトラブルシューティングを行いました。とはいえ、SDKは別のインストールでも正常に機能したため、広範囲にわたる問題ではありません。(更新:回避策があります。以下の「Windowsユニバーサルアプリの構築」セクションを参照してください。)

Visual Studio 2015のPythonツールは、CPython、IronPython、PyPy、Anaconda、およびその他のPythonコンパイラーをサポートし、エディターでIntelliSenseを提供し、混合モード(Python / C ++)やクロスOSデバッグを含むインタラクティブなデバッグを提供します。

7つのJavaScriptIDEを確認してから、現在バージョン1.1RCのNode.jsTools for Visual Studioで、Visual Studio 2015(natch)と新しいLinuxベースのDockerfileテンプレートのサポートが追加され、アプリを簡単に起動できるようになりました。 Dockerコンテナで実行されます。DockerfileテンプレートをNode.jsプロジェクトに追加するには、プロジェクトを右クリックし、[新しいアイテムの追加]を選択して、Dockerfileテンプレートを選択します。

このバージョンのNTVSは、Node.js IntelliSense、フォーマット、デバッグ、TypeScript、単体テストの実行、およびNpm統合も改善します。追加のダウンロードにより、NTVS 1.1 RCは、Node.jsベースのユニバーサルWindowsアプリをRaspberry Pi2などのWindowsIoTCoreデバイスにデプロイできる新しいIoT拡張機能をサポートします。

Visual Studio2015でのコード編集

数年前、私はVisual Studioチームの当時のGMから、VisualStudioの次のバージョンの計画についてプライベートブリーフィングを受けました。スライドを実行した後、彼女は私に他に何を提案するかを尋ねました。Wordでのリアルタイムのスペルチェックの波線の下線規則は、VisualStudioでのリアルタイムの構文チェックに適用できることを指摘しました。多くの落書きが続いた。この機能は、次のベータ版で正式に登場しました。

それから彼女は、私がVisual StudioでClippyが欲しいかどうか、目を輝かせて私に尋ねました。笑って、私は言いました。それが行った提案が本当に良かったのでなければ、たぶん今までにないでしょう。」(Clippyは、迷惑な方法で愚かな提案をしたことで、Wordユーザーの間でひどい評判を持っていました。)

Visual Studio 2015のClippyに相当するのは電球です。これは、Visual Studioエディターがコードの問題を見つけて提案があると判断したとき、および「^。」と入力したときに表示されます。電球は、一般的なコードの問題の修正だけでなく、コードのリファクタリングの可能性も提案します。リファクタリングメニューが消え、すべてのリファクタリング操作が電球に移動しました。結局のところ、電球は良いことだと思います。

Visual Studio 2015では、変数の名前変更が大幅に改善されています。あなたはそれが起こる前にそれが何をしようとしているのかを実際に見ることができます。ライブコード分析と自動修正も大幅に改善されています。魔法の一部は、ターゲットとするMicrosoftプラットフォームとNuGetパッケージの特定のコード対応ガイダンスによって分析が通知されることです。

小さな変更のように見えますが、Visual Studioのウィンドウレイアウトをカスタマイズ、保存、および復元できるようになりました。なぜこれが重要なのですか?画面サイズの異なるコンピューターを定期的に切り替える場合は、現在使用している画面に最適化されたレイアウトをプルアップするだけで、時間を大幅に節約できます。

Visual Studioでタッチがサポートされるようになりました:スクロール(通常のスクロールバーと拡張スクロールバーのエディター画面をタップしてドラッグ)、ピンチしてズーム、エディターの余白をタップして行全体を選択、ダブルタップして単語を選択、を押したままにして、エディターのコンテキストメニューを呼び出します。タッチスクリーンを備えた開発マシンをお持ちの場合(Windows 10またはモバイルデバイス用に開発している場合はそうすべきです)、これは便利です。

そして、私の個人的なお気に入りのUIの改善:これ以上すべての大文字メニューはありません。いい厄介払い。

テスト、デバッグ、診断、およびパフォーマンスの監視

最初の試行で常に完璧なコードを書く人は、先に進むことができます。ここで見るものは何もありません。私たちの残りの部分はおもてなしをしています。すでにかなり優れていたVisualStudioのデバッグは、さらに良くなりました。

条件付きブレークポイントは長い間存在していました。これで、ブレークポイントに到達したときに実行するアクションを指定することもできます。これには、自動実装されたプロパティのブレークポイント、ブレークポイントアクション、ウォッチ式、およびイミディエイトウィンドウでのラムダ式の使用が含まれます。

2つの新しいツール(ライブビジュアルツリーとライブプロパティエクスプローラー)を使用すると、実行中のWindows PresentationFoundationまたはWindowsストアアプリのビジュアルツリーを調べることができます。デバッグ中に使用できる新しい診断は、イベントリスト、メモリ使用量ツール、およびCPU使用率グラフです。一方、デバッガーでコードを実行すると、Visual Studioは自動的にコードの時間を計測し、コードの(推定)経過時間とCPU時間を通知します。デバッグした後は、パフォーマンスに取り組む必要がありました。

デバッグしていないときは、新しいアプリケーションタイムラインツールを使用して、Windows Presentation Foundation、Windowsストア8.1、およびユニバーサルWindowsプラットフォームXAMLアプリのシステムリソース消費量を経時的に追跡できます。同様に、ネットワーク診断ツールを使用すると、WindowsストアアプリとWindowsユニバーサルアプリのHTTPネットワーク操作を追跡できます。また、DirectXアプリ(常にではありませんが、多くの場合、ゲーム)を開発している場合は、アプリケーションの実行中にフレーム時間、フレームレート、およびGPU使用率のグラフを表示できるようになりました。これらのインジケーターは、GPUまたはCPUがアプリのパフォーマンスのボトルネックである可能性があるかどうかを把握するのに役立ちます。

スコアカード 能力(30%) パフォーマンス(30%) 使いやすさ(20%) ドキュメント(10%) (10%) 開発のしやすさ(20%) 総合評点
Visual Studio 2015 10 9 8 8 9 0 9.0