2010-11-26 13 views
2

現在WindowsフォームのInventoryプロジェクトに取り組んでいます.3層アーキテクチャを実装したいと思います。私はビジネスレイヤーとデータアクセスレイヤーでいくつのクラスを作成すべきかを知りたいと思います。Windowsの3層アーキテクチャのフォーム

後で私のプロジェクトで仕事が増えたらどうなりますか?私は単一の長いコード化されたビジネス層とデータアクセス層に固執するか、ビジネス層とデータアクセス層内にいくつかのクラスを作成すべきですか?

答えて

2

一般に、要件名詞はアプリケーションのクラスにモデル化されます。ヘルパーやラッパー、複数の値を返す関数など、クラスを作成する他の原因があります。

あなたがそれを設計するのに慣れていない場合は、経験豊かな人の助けを借りてください。

あなたのプロジェクトには幸運です。

+0

+1 @SauDard - あなたの質問の性質は、いくつかの基本的なOOの原則を最初に読んでおく必要があることを示唆しています。 「責任ある責任」の原則を参照して、あなたを導くことができれば、より経験豊かな設計の助けを求める。 – Paolo

2

Srinivasによれば、一般に、テーブルの各テーブルまたは論理グループは、別々のDALおよびBLLクラスによって表される。

ORMを使用している場合は、レイヤーに加えてそれぞれのエンティティクラスも使用できます。

プロジェクトが本当に大きくなった場合、次の分離は、通常、同じプロジェクトのサブフォルダを持つ名前空間の行に沿って行われるか、各ビジネス上の問題を別のアセンブリに分割します。

1

私のアプローチ:

  1. データベース(通常はSQL Server 2008またはExpress Editionの)
  2. のWindows(EF 4 ORM、複雑なデータの検証、作業フロー、ビジネスロジックをさらすWCF)
  3. Windowsサービスクライアント(クライアントWCFプロキシ、最小限のデータ検証を使用してWCFを呼び出す)

PS:ビジネスロジックをサーバにコードを分割するpartial classを使用して、単一のクラスで実装されていますal csファイル。

関連する問題