連載
» 2017年04月21日 05時00分 公開

連載:簡単! Visual Studio 2017入門:第2回 Visual Studio 2017の基礎を知る (2/4)

[かわさきしんじ,Insider.NET編集部]

ソリューションとプロジェクトの違い

 ここではまず、1つのアプリに含まれるプログラムについて考えてみよう(以降、「プログラム」と「プロジェクト」という似た語句を多く使っているので、間違えないように注意してお読みいただきたい)。

 現実のソフトウェアでは、1つのアプリに、複数の.NETプログラムが存在する可能性がある。例えば、メインプログラム(=.EXEファイル)の他に、そのプログラムを実行するときに動的にリンクされて使用されるプログラム(=.DLLファイル)、これらの.EXEファイルや.DLLファイルをコンピュータにインストールするためのセットアッププログラムなどが存在する場合だ。

 前回説明したように、1つのプログラムを作成するには、1つのプロジェクトが必要である。よって、上記のように複数のプログラムを含んだアプリの場合には、「.EXEファイル(メインプログラム)を作成するプロジェクト」「メインプログラムで使われる.DLLファイルを作成するプロジェクト」など複数のプロジェクトが必要ということになる。しかし、それらのプロジェクトをばらばらにしておくと、アプリ全体を管理しにくい。そこで、プロジェクトをまとめて管理するためのフォルダのようなもの(「コンテナ」と呼ばれる)が必要になる。この複数のプロジェクトをまとめるコンテナが「ソリューション」というわけだ。

 実際の開発では、1つのソリューションで、アプリ全体を管理することが一般的。つまり、「ソリューション=実際のアプリ」というケースがほとんどである。

 ここでもう一度、ソリューションフォルダとプロジェクトフォルダの話題に戻ろう。今説明したVS 2017における「ソリューション」や「プロジェクト」という構成概念が、そのまま「ソリューションフォルダ」や「プロジェクトフォルダ」という物理構成となって、ファイルシステム上に作成されているのだ(もちろんVS 2017の構成概念とは異なる物理構成にすることも不可能ではないがお勧めはしない)。

ソリューションフォルダとプロジェクトフォルダの関係 ソリューションフォルダとプロジェクトフォルダの関係

 以上、プロジェクトフォルダをまとめて管理しているソリューションフォルダについて解説した。次は、ソースファイルをまとめて管理しているプロジェクトフォルダについて説明しよう。

プロジェクトフォルダの内容

 次の画面は、先ほどのソリューションフォルダ内にあるプロジェクトフォルダを開いた画面だ。

既存プロジェクトのプロジェクトフォルダの内容 既存プロジェクトのプロジェクトフォルダの内容
既存プロジェクトのプロジェクトフォルダをWindowsエクスプローラーで開いた画面。
(1) プロジェクトフォルダ。詳細は前述した。
(2) binフォルダ。VS 2017のデフォルト設定では、ビルドにより生成されたプログラムは、.EXEファイル(=実行可能ファイル)や.DLLファイルとして、このbinフォルダ内に出力される。前回ビルドしたプログラムもこのフォルダ内に出力されている。
(3) objフォルダ。VS 2017が使用するフォルダ。このフォルダを開発者が意識する必要はなく、(今のところ)覚えておく必要もない。
(4) Propertiesフォルダ。VS 2017のプロジェクト設定のデータ内容が保存されるフォルダ。C#では「Properties」というフォルダ名になるが、VBでは「My Project」というフォルダ名になる。
(5) App.configファイル。プログラムが実行時に動的に設定する必要がある情報を格納するファイル。今のところは、これについて覚えておく必要はない。
(6) ソースファイル。個別のファイルについては後ほど説明する。
(7) プロジェクトファイル。拡張子は、C#のプロジェクトなら「.csproj」(C Sharp PROJect)、VBのプロジェクトなら「.vbproj」(Visual Basic PROJect)。このファイルは重要なので覚えておく必要がある。ソリューションファイル(.slnファイル)と混同しないように注意すること。
(8) プロジェクトユーザーオプションファイル。拡張子は、C#のプロジェクトなら「.csproj.user」(C Sharp PROJect User Option)、VBのプロジェクトなら「.vbproj.user」(Visual Basic PROJect User Option)。プロジェクトに関連付けられたオプション設定を保存するファイル。このファイルの存在については(今のところ)特に覚えておく必要はない。

 上の画面を見ると分かるように、プロジェクトフォルダの中にはプロジェクトファイル(.csprojファイルもしくは.vbprojファイル)がある*1。このプロジェクトファイルは、ソリューションファイル(.slnファイル)と混同しやすいので注意が必要だ。

*1 これらのファイルからも分かるように、1つのプロジェクト内では複数の異なる開発言語を混在して使用することはできない。しかし、1つのソリューションにC#のプロジェクトとVBのプロジェクトを含めることは可能だ。


 以上、VS 2017のプロジェクト構造とファイル構成について説明した。これで、VS 2017のプロジェクトの場所が分かるようになっただろう。それでは、「プロジェクトを開く方法」に話を戻し、「2. Windowsエクスプローラーから開く方法」と「3. IDEのメニューバーから開く方法」について解説しよう。

Windowsエクスプローラーから既存プロジェクトを開く方法(第2の方法)

 既存プロジェクトを開く方法の2つ目は、Windowsエクスプローラーで直接ソリューションファイル(.slnファイル)を実行する方法だ。

 もしくは、プロジェクトファイル(.csprojファイル/.vbprojファイル)を直接実行してもよい。これだけで、既存のプロジェクトを開くことができる(ソリューションファイルとプロジェクトファイルについては前述した)。

 特に、半年前に作成したような古いプロジェクトの場合や、インターネットで入手したサンプルプログラムのように一度も開いたことがないプロジェクトなどで、第1の方法であるスタートページにリストアップされないような場合には、このWindowsエクスプローラーから開く方法が便利である。

IDEのメニューバーから既存プロジェクトを開く方法(第3の方法)

 既存プロジェクトを開く3つ目の方法は、VS 2017のIDEにあるメニューバーから開くというものだ。

 VS 2017を起動して、IDEのメニューバーの[ファイル]−[開く]−[プロジェクト/ソリューション]を選択する。すると、次の[プロジェクトを開く]ダイアログが表示される。このダイアログでソリューションファイルを選択すると、プロジェクトを開いて、IDEへと読み込める。

[プロジェクトを開く]ダイアログ [プロジェクトを開く]ダイアログ
ソリューションファイル(この例では「WindowsFormsApp1.sln」)をダブルクリックすると、プロジェクトを開ける。
(1) 左側のペーンに表示される[Projects]フォルダをクリックすると、プロジェクトのデフォルトの作成先であるフォルダを一発で開ける(前述の通り、通常はユーザーの「ドキュメント」フォルダの下にある「Visual Studio 2017\Projects」フォルダ)。
(2) ダブルクリックすると、プロジェクトが開く。

 この方法は、開きたいプロジェクトをここしばらく使用しておらず、なおかつプロジェクトがそのデフォルト作成先である「Visual Studio 2017\Projects」フォルダ内にある場合に最適だ。

 以上の3つの方法で既存プロジェクトを開くことができる。この他にもメニューバーの[ファイル]−[最近使ったプロジェクトとソリューション]から直近に使用したプロジェクトを直接開くことも可能だ。

 それでは、前回作成したプロジェクトを開くことができたとして、VS 2017のコーディング環境であるIDE画面の構成について見ていこう。

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。