不必要な肥大化を招くことなく、ビジネスプロジェクト間で簡単に移植できるように、コードをどのように編成しますか?
たとえば(.Netの場合)、次の名前空間があるとします。
namespace Computers
- Hardware
- Motherboard
- GPU
namespace Monitors
- Display
- Mirrors
namespace Peripherals
- USB
- PS/2
- 親名前空間ごとにプロジェクトを作成してから、そのプロジェクトdllを他のプロジェクトで参照しますか?
- 1つの大きなクラスのライブラリを作成し、それを移植しますか(ライブラリの5%しか必要ない場合でも)?
- または、1つのファイルを作成し、必要なコードをそのファイルにコピーしますか。そのファイルを、「プラグアンドプレイ」アーキテクチャを実現するために必要なすべてのプロジェクトに取り込んでいますか?
編集: 私は具体的に.Netの回答を探していませんが、それは私が使用している具体的な例です(抽象的な例ではこの場合の質問を理解するのが難しくなるため)