SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

最新バージョン「Visual Studio 2017(Visual Studio "15")」特集(AD)

インストール時の速度と容量が劇的に改善! 多目的で気軽に導入しやすい次期バージョン「Visual Studio "15"」

最新バージョン「Visual Studio 2017(Visual Studio "15")」特集 第1回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 Windows系開発者ならおなじみのマイクロソフトの統合開発環境「Visual Studio」。その次期バージョンとなる「Visual Studio "15"」が、現在プレビュー版(執筆時点ではPreview 4)として公開されています。本連載では、プレビュー版をとおして、Visual Studioの新たな魅力を解説します。 従来のVisual Studioでは、かなりの時間が必要だったインストール、それが劇的に早く終わるように変貌しました。今回は、その新しいインストーラーと、IDEの新機能を取り上げます。

  • X ポスト
  • このエントリーをはてなブックマークに追加

対象読者

  • Visual Studioを使ったアプリケーション開発に興味がある方

Visual Studio "15"

 「Visual Studio "15"」(以下、VS15)は、統合開発環境Visual Studioの次期バージョンです。なお、Visual Studio 2015とは別物で、この"15"という数字は、内部バージョンに由来するものです。正式にリリースされる際には、異なった正式名称になります。

Visual Studio "15" Preview 4

 VS15は、2016年3月30日にプレビュー版が初めてリリースされた後、順調に開発が進められており、8月22日には、Preview 4がリリースされました。今回のバージョンでは、不具合の修正はもちろん、さらに機能が強化されています。

 なお、プレビュー版ではサポート対象外となっているため、業務環境などへのインストールは避けたほうが無難です。また、Preview 4では、これまでのプレビュー版のアンイストールが推奨されています。ただし、前バージョンのVisual Studio 2015とは、共存インストールが可能です。

VS15の新機能

 VS15での主な機能強化は次のとおりです。

  • インストーラーの刷新
  • スタートページの項目追加などのIDE機能強化
  • 新しいインストーラーに対応した開発用コマンドプロンプト
  • 新しい例外ヘルパーの追加
  • C++コンパイラ、standard libraryの更新
  • IntelliSenseの機能強化
  • Xamarin 4.1の搭載

 VS15の新機能で、まず目をひくのが、インストーラーの刷新です。Preview 3までは、従来のインストーラーと新しいインストーラーの両方が提供されていましたが、今回のPreview 4からは、新しいインストーラーのみとなっています。

 従来のVisual Studioのインストールでは、2時間以上かかる場合もあり、本当に終了するのかと心配するぐらいでした。また、機能を最小にしても、数GBのディスク容量を必要としていました。

 VS15では、このような問題を解消するために、インストーラーが刷新され、インストールファイルの容量の削減と、インストールの劇的な高速化が実現されています。

新しいインストーラー

 では早速、新しいインストーラーを使って、インストールしてみましょう。プレビュー版のダウンロードサイトから、「すぐに使ってみる」ボタンをクリックすると、インストーラーがダウンロードされます。

ダウンロードページ
ダウンロードページ

「ワークロード」の選択

 インストーラーを起動してすぐにInstallボタンが表示されるので、そのボタンをクリックします。するとインストーラー本体のダウンロードが開始され、数分たつと、次のような画面になります。

インストール中の画面
インストール中の画面

 そして、再度Installボタンをクリックすると、次のように、ワークロード(Workloads)と呼ばれる画面になります。

ワークロード画面
ワークロード画面

 ワークロードでは、開発する目的に応じたインストールセットを選択でき、インストールするコンポーネントをカスタマイズすることができます。

 インストールセットには、いずれもコアエディタ機能が含まれています。それ以外のコンポーネントについては、インストールセットによって異なっています。

 Workloads欄でインストールしたいセットをクリックすると、右端に、インストールされるコンポーネントの一覧が表示されます。それらは、さらに個別にインストールするかどうかの設定が可能です。

 ここでは、.NET desktop developmentを選んで、Installボタンをクリックしてみましょう。インストールされるファイルサイズが右下に表示されるようになっており、この場合は、1.02GBとなっています。

 ここから、また必要なコンポーネントがダウンロードされて、インストールが始まります。そして、(環境にもよりますが)たったの10分程度でインストールが終了します。

インストール終了画面
インストール終了画面

「ワークロード」とは

 新しいVSでは、より広範囲な開発に対応するようになっています。C#を使ったデスクトップアプリケーション開発はもとより、iOS/Android対応のモバイルアプリ開発、Node.jsやPythonでの開発までサポートされます。そのため、それぞれの開発に必要なコンポーネントを絞ってインストールできるように、インストーラーが改善されました。

 もちろん、一度インストールした後も、再度インストーラーを起動することで、インストールセットの内容を変更できます。また今後は、クラウド上にインストールセットが残せるようになる予定で、いったん構築した開発環境を、別のPCにすぐに再現することもできそうです。

 なお、Preview 4では、一部未実装のものもありますが、ワークロードでは、次のようなインストールセットが予定されています。

  • UWP(Universal Windows Platform)アプリ開発
  • Webアプリ開発(ASP.NET、TypeScript、Azureツール)
  • Webアプリ開発(Python)
  • Windowsデスクトップアプリ開発(C++)
  • Windowsデスクトップアプリ開発(.NET)
  • Windowsゲームアプリ開発(DirectX)
  • クロスプラットフォームでのモバイル開発(.NET、Xamarin)
  • クロスプラットフォームでのモバイル開発(Apache Cordova)
  • クロスプラットフォームでのゲーム開発(Unity)
  • Linux/IoT向け開発(C++)
  • Android/iOSモバイルアプリ開発(C++)
  • Office/SharePointアドイン開発
  • データサイエンス向け開発(R、F#、Python)
  • Node.jsでの開発
  • データストレージ/SQL処理(SQL、Hadoop、Azure ML)
  • Azureクラウドサービスの開発
  • Visual Studioのextension開発

IDEの起動

 これでインストールできたので、次にIDEを起動してみましょう。インストール終了画面から、Launchボタンをクリックすれば起動します。IDEの初回起動時間も、従来より3割程度早くなったようです。なお、執筆時点では、まだ日本語のメニューは用意されておらず、英語版となります。

startページ

 Preview 4からは、スタートページに項目が追加されています。最近使用したソリューションを示すRecent項目に加えて、OpenやNewといった項目が表示されます。Openは、フォルダを開くダイアログなどの表示、Newでは、ソリューションのテンプレートを検索して、新規作成が可能です。

スタートページ
スタートページ

新規作成

 Newの検索機能を使って新規作成してみましょう。検索項目に、例えばC#と入力すると、C#を使ったソリューションのテンプレート一覧がずらっと表示されます(ただし、先ほど.NET desktop developmentを選択しているので、その他の機能のテンプレートは表示されません)。

C#で検索
C#で検索

 ここでは、Console Applicationを選んでみます。すると、ソリューションの新規作成ダイアログが表示されるので、名前や場所を指定します。

新規作成ダイアログ
新規作成ダイアログ

C# 7.0を利用する

 Preview 4では、特に指定しなくても次期バージョンの「C# 7.0」の機能が使えるようになっています。ただし、タプル(複数の値をまとめる)構文を記述すると、環境によってはエラーとなるようです。

 

タプル構文でのエラー
タプル構文でのエラー

 その場合は、次の手順で不足しているパッケージを手動で導入します。

 [tools]メニューから、[NuGet Package Manager]-[Manage packages for Solution]を選択し、Browseタブを開きます。そしてInclude prereleaseにチェックをいれ、ValueTupleと入力して検索します。System.ValueTupleというパッケージが表示されるので、それを選択し、インストールしておきます。

パッケージの手動インストール
パッケージの手動インストール

サンプルコード

 簡単なコードで動作を確認してみましょう。C# 7.0の新機能である、ローカル関数とタプル構文を使ったサンプルです。

リスト1 Program.csの一部
// 身長と体重から、BMI値と適正体重を計算する
static void Main(string[] args)
{
    // BMI値と適正体重を返すメソッド
    (double bmi, double ideal) BMI(float height, float weight)
    {
        // 身長をメートルに変換する
        height = height / 100;

        // 身長の2乗を求める
        var h2 = Math.Pow(height, 2);

        // BMI値と適正体重を返す
        return (weight / h2, h2 * 22);
    }
    // 170cm 78㎏の例
    var (bmi, ideal) = BMI(170,78);
    Console.WriteLine("BMI:{0:F2}, 適正体重:{1:F2} kg",bmi,ideal);
}

 BMIというローカル関数を使って、体重と身長からBMI値と適正体重を計算します。計算自体は単純なものですが、計算結果の2つの値を、タプルとして返すようにしています。

実行結果
実行結果

IDEの機能強化

 VS15では、IDEの機能もさらに強化されているので、いくつか紹介しておきます。

拡張機能マネージャーのローミング

 拡張機能マネージャーに、ローミング機能が追加されました。拡張機能の設定リストがクラウド内に保存されるようになるので、複数の開発環境であっても、サインインすればインストールした拡張機能が同期されます。

 メインメニューの[Tools]から、[Extensions and Updates]を選び、[Roaming Extension Manager]をクリックすると、同期している拡張機能の一覧が表示されます。なお、同期を停止したい場合は、各機能を選択し、表示されたStop Roamingボタンをクリックします。

拡張機能マネージャーのローミング設定
拡張機能マネージャーのローミング設定

スタイルアナライザー

 スタイルアナライザーは、コーディング規則を設定する機能です。この機能を使うと、コーディング規則の統一ができるので、チームで開発する場合など、よりメンテナンス性の高いコードを書くことができます。

 C#であれば、メインメニューの[Tools]から[Options]を選び、[Text Editor]-[C#]-[Code Style]-[General]を開くと、設定画面になります。

Code Style設定画面
Code Style設定画面

 ここでは、次の3つの規則が設定可能です。

  • メンバーアクセス時のthis.の規定
  • 型指定に、System.Int32などの.NET Frameworkの型か、intなどのエイリアスのどちらを使うか
  • 暗黙的型指定のvarの適用範囲

 例えば、コーディング規則として、クラスのメンバーアクセス時には、必ずthis.をつけるようにしたい場合は、まずthis. preferences内のPreference項目で、Do not prefer this.から、Prefer this.(this.の適用)に変更します。そして、Severity(厳格さのレベル)を、None、Suggestion、Warning、Errorから選びます(ただしNoneの設定では、特に何も変化しないので、選択する意味はないかもしれません)。

 this.をつけずにメンバーにアクセスするコードを書いた場合、Suggestion設定なら、該当のコードがグレーの表示になるだけですが、Warningなら緑の波線、Errorなら赤い波線の表示が付加されます。また同時に、Error Listウィンドウにも、コーディング規則の設定の応じた詳細情報が表示されます。

Error表示
Error表示

命名規則

 スタイルアナライザーでは、変数などの命名規則も設定可能です。[Options]から、[Text Editor]-[C#]-[Code Style]-[Naming]を選択すると設定画面が表示されます。

 例えば、定数はすべて大文字にするという規則なら、まず+ボタンをクリックしてNaming Ruleを新規作成します。そして、各項目の設定は、次のようにします。

Naming Rule設定
項目 設定する内容
Name 任意名称
Symbol Specification 任意のタイトルをつけ、Modifiesのconstにチェックする
Naming Style 任意のタイトルをつけ、CapitalizationはALL UPPERを選択する
Parent Rule None
Severity Error

 Name項目には、任意の名称をつけます。

Naming Rule設定
Naming Rule設定

 Symbol Specification項目では、+ボタンをクリックすると設定ダイアログが表示されるので、次のように、任意のタイトルをつけ、Modifiesのconstにチェックします。

Symbol Specification設定
Symbol Specification設定

 同様に、Naming Style項目では、任意のタイトルをつけ、Capitalization(大文字設定)項目からALL UPPER(すべて大文字)を選択します。

Naming Style設定
Naming Style設定

 これで、constキーワードでの定義はすべて大文字にする、という規則の設定ができました。

Naming Rule追加完了
Naming Rule追加完了

 例えば、クラスの定数定義で、次のように記述すると、エラー表示となります。

命名規則違反の表示
命名規則違反の表示

文字列の分割

 この機能は、ちょっとした小技のような機能ですが、意外と便利かもしれません。長い文字列を定義した場合、ソースが見づらくなる場合があります。そのような際に、文字列の中間にカーソルを置いてEnterキーを押すだけで、文字列が分割され、+演算子で結合された記述に変換されます。

 サンプルコードの文字列部分で、カンマの直後にEnterキーを押した場合、次のような変換結果となります。

Console.WriteLine("BMI:{0:F2}," +
    " 適正体重:{1:F2} kg", bmi, ideal);

まとめ

 今回は、VS15の新しいインストーラーとIDEの新機能を解説しました。次回以降でもVisual Studioの新しい機能を中心に解説する予定です。

参考資料

修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/9678 2017/05/09 22:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング