- ベストアンサー
VC++.netにおけるソリューションという言葉の意味
みなさん、こんにちは。 VC++.netにおけるソリューションという言葉の意味を教えてください。 マイクロソフトが勝手に使い出した用語だと思うのですが、ヘルプで調べても要領を得ない説明しか載っていないので、おわかりの方、よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
簡単に言うと、プロジェクトの集まりだ。プロジェクトを簡単に言うと、1プロジェクトが1つのEXEやDLLを作るものだと思ってくれたら良い。 例えば、DLLを作るプロジェクトが2つ(DLLAとDLLBとする)あり、それらのDLLを使うEXEのプロジェクトが1つあったとすると、3つのプロジェクトは「意味的に」一つの大プロジェクトと言える。この大プロジェクトがすなわちソリューションだ。 それぞれのプロジェクトを別々に一つのソリューションとして(=3ソリューションに3プロジェクト)管理する方法と何が違うんだと思うかも知れない。最も分かりやすい違いは、複数のプロジェクトを1ソリューションに入れると、「プロジェクトの依存関係」を設定できる事だ。先ほどの例では、EXEプロジェクトがビルドされるためにはDLLAプロジェクトとDLLBプロジェクトのビルドが完了していなければならない、というような依存関係を設定する事ができる。すると、それぞれのプロジェクトのソースをちょこちょこ修正し、EXEプロジェクトをビルドしようとすると、それに先立って自動的にDLLAプロジェクトとDLLBプロジェクトをビルドしてくれるのだ。 まぁ小規模なプロジェクトではほとんど意味がない。ちなみにこのソリューション、Visual C++ 6.0では「ワークスペース」と呼ばれていた。Visual Basic 6.0では、「プロジェクトグループ」がこれに相当するかな。で、開発環境の統合に伴ってソリューションという名称を使うようにしたのだろう。
お礼
ありがとうございます。「大プロジェクト」というわけですね。大変よくわかりました。本を読むとプロジェクトをまとめたものというような記述があったのですが、新規プロジェクトを作成した場合でもslnというソリューションのファイルが作成されていて、なんとなくプロジェクトとソリューションが同じ意味で使われているような気がしたので混乱していました。