1

3層アーキテクチャを表現するためのさまざまな可能性について混乱しています。

Data-Access-Layer
Business-Layer
Presentation Layer (User Interface)

また

Database (aka Backend)
Business-Layer
Presentation Layer (User Interface)

最初のアプローチでデータベースをスキップできるのはなぜですか?どちらもデータベースを使用しています!データベースはレイヤリングに属しているかどうか?!

何が間違っていて、何が正しいのですか?

あなたの誰かがこれを明確にすることができますか?

4

4 に答える 4

3
Data-Access-Layer
Business-Layer
Presentation Layer (User Interface)

Data-Access-Layerは必ずしもデータベースではありません。XMLファイルである可能性があります。RSSフィードである可能性があります。外部アプリケーションである可能性があります。アプリケーションにデータを取り込むのは、好きなものなら何でもかまいません。

だからそれは本当に:

[Data-Source]
Data-Access-Layer
Business-Layer
Presentation Layer (User Interface)

[Data-Source]データベース、XML、RSSなどはどこにありますか...私はデータソース自体をレイヤーではなくドライバーとして考えることを好みます。

このアプローチの柔軟性により、アプリケーションの他の部分に触れることなく、データソースを交換できます。したがって、バックエンドデータとしてXMLファイルを使用することから始めて、代わりにデータベースに変更したい場合は、DALレイヤーに触れるだけです。アプリケーションの残りの部分は、それがまだ取得している限り、気にしません。同じ形式のデータ。

于 2010-04-14T11:57:47.410 に答える
0

あなたのdalはdbを使用しないかもしれないと考えましたか?それはxmlファイルを使用する可能性がありますか?

最初のアプローチは、3層レイヤーとは何かというより抽象的な概念を使用することです。

各層に入るものは、層の実装によって異なります。Yuoは、GUI / DB / BizLogicの「プログラム」間でレイヤーを混在させていることに気付くかもしれませんが、抽象的には、それらのレイヤーを維持しています。

データアクセス層
ビジネス層
プレゼンテーション層(ユーザーインターフェイス)

上記を考慮すると、データベースに接続するコードを作成することができます。それはDALですか、それともロジックですか?

データにアクセスするためのコードを記述しているときのDALだと思います。

于 2010-04-14T11:53:53.330 に答える
0

プレゼンテーション層
これは、アプリケーションの最上位レベルです。プレゼンテーション層には、商品の閲覧、購入、ショッピングカートの内容などのサービスに関連する情報が表示されます。ブラウザ/クライアント層およびネットワーク内の他のすべての層に結果を出力することにより、他の層と通信します。
アプリケーション層(ビジネスロジック/ロジック層/データアクセス層/中間層)
ロジック層はプレゼンテーション層から引き出され、独自の層として、詳細な処理を実行することでアプリケーションの機能を制御します。
データ層
この層はデータベースサーバーで構成されています。ここに情報が保存および取得されます。この層は、データを中立に保ち、アプリケーションサーバーやビジネスロジックから独立させます。データに独自の層を与えると、スケーラビリティとパフォーマンスも向上します。

詳細については、以下を参照してください:http:
//en.wikipedia.org/wiki/Multitier_architecture

于 2010-04-14T11:55:06.353 に答える
0

MicrosoftのPatternsandPracticesグループには、この問題のすべてのバリエーションを網羅した優れたアーキテクチャガイドがあります。.NETに少し焦点を当てていますが、どのような環境にも非常に適用できます。強くお勧めします。

于 2010-04-14T12:04:07.813 に答える