うための最善の方法な構造プロジェクト?[定休日]
-
05-09-2019 - |
質問
ってどういう構造をもっ。
またプロジェクトを(再)使用するようにします。
だって、我々のデータプロジェクトモデルプロジェクトでの使用に多くのプロジェクト
私が本当に知っておきたいがどのように構造がこのタイプのプロジェクトは、何の名称です。
標準3段階の出願のすべいのようなもの:
- ダル,DataAccessLayer、データ...
- モデルBusinessObject,ボル...
- UIビュ...
その他の考えになりますか。
各企業に働いていったって、いろいろな方法で組織化してあるので、一つりではありませんか?る使いやるなたにとって、望ましいのか。
Thx!
解決
データ層のために、私は通常使用します:
の Company.ProjectName.Dataする(即ちAdventureWorks.OrderManager.Data)
ビジネス層のために私は「ObjectModel」(私は「ビジネス」や「ビジネスロジック」を使用しているが、これはそれに名前を付けないで、なぜデータがそうオブジェクト/クラスで一緒に来るエリアのですか?)のようなものを好むます。
のCompany.ProjectName.ObjectModelの(即ちAdventureWorks.OrderManager.ObjectModel)
UIに関しては、私は昔ながらの "UI" や "プレゼンテーション" のどちらかを好き...
のCompany.ProjectName.Presentationの(即ちAdventureWorks.OrderManager.Presentation)
他のヒント
私は何をすべきか、かなり厥、IVEは、私はすべての私の再利用可能なコードを配置しようとするライブラリプロジェクトのカップルを得た以外。その後、私のモデルとDALがちょうどそれらにプロジェクトの詳細を追加し、これらのlibrarysの上に座る。
ほとんど私は、階層化アーキテクチャを使用します.NET:アプリケーションとサービス
に設計します。ドキュメントには、それを実装するためのアーキテクチャおよび.NETテクノロジについて説明します。
ソフトウェアアーキテクチャは、構築するためのソフトウェアの種類によって異なります。あなたがしたい場合は、カーネル・プログラミング他の原則は、アプリケーション開発を行っているに比べて適用されます。さらに別の原則は、あなたが物理シミュレーション、天気予報のソフトウェア、ソフトウェアIDEのかコンパイラをやろうとしているときに適用されます。
私はあなたのアプリケーションの開発効率向上をしたいと仮定します。さて、あなたはおそらく、あなたが反映しようとしているドメインの周りにあなたのソフトウェアを設計したいと思うでしょう。しかし、その後も多くのオプションがあります。
この大きな話題でより多くの洞察力のために、私は強くDomain Driven Design
からEric Evans
とApplying Domain-Driven Design and Patterns
からJimmmy Nilsson
を読むことをお勧めします。
私は現在、前るwebアプリケーションは、3段階のアーキテクチャ:
- 顧客層(ブラウザ)
- 申請層(Java EEアプリケーションサーバー、がアプリケーションライブ)
- バックエンド層(メインフレームおよびレガシーアプリ、各種データベース)
この階層アーキテクチャーの層の層は:
- プレゼンテーション層:を生成するUIで使用されるには、クライアント層
- アプリケーション層:に相当する利用の場合、アプリケーションロジック
- サービス層:地図をドメイン理論とデータからバックエンド層をJavaモデル
- 統合層:絡をとり、バックエンド層とを含むゲートウェイの段階、メール、...とDAOsその他のもの
この、あくまで目安ですが、例えば、プロジェクト構造の終結果の種類に依存します。お問い合わせください 私の答え へ この質問 当部門およびネーミング戦略のためのパッケージ。
ことはできまスワップ/削除層の貴重な資料が閲覧でにSOA例えば、層Webservice層のためのアプリケーションレイヤやサービスの層までのESB(企業のサービスバスで接続できるアプリケーションやサービスする場合が不可能又は困難とを継続してご利用いただけ最適なアーキテクチャやデザイン。
を考えている場合は、構造で、プロジェクトのためのシナリオのような、一部の重要な性質のモジュール、部品はたいて
- Testability
- 再利用性
- 保守性
できする"という目標の達成に向けての設計のための低カップリングや高い結束という選択階層アーキテクチャーグルーピングモジュールの高機能化/抽象化では一番良い準備をして臨みたいです。内層に分類さらに機能を助けます。逃れより特定の層にのみ依存のインタフェースをより一層の削減に結合す。