問題タブ [3-tier]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - データテーブルをリストにマップするLINQ
私はLINQを発見したばかりなので、私と一緒に包括的にしてください! :-)
そう!データテーブルを提供するデータ層があり、それらをオブジェクトのリストに変換したいと考えています。これらのオブジェクトは、特定のレイヤー DTO (データ転送オブジェクト) で定義されます。
データテーブルのすべての行をオブジェクトにマップし、すべてのオブジェクトをリストに入れるにはどうすればよいですか? (今日はフィールドごとに「手動で」作成します)LINQで可能ですか?LINQ2Entities について聞いたことがありますか? 私は正しいですか?
初心者が理解できるように助けてくれてありがとう...
c# - Windowsフォームの3層アーキテクチャ
現在、Windowsフォームでインベントリプロジェクトに取り組んでおり、3層アーキテクチャを実装したいと考えています。BusinessLayerとDataAccessLayerでいくつのクラスを作成すればよいのか知りたいのですが。
後で、私のプロジェクトでの作業が増えるとどうなりますか?単一の長いコード化されたビジネスレイヤーとデータアクセスレイヤーに固執する必要がありますか、それともビジネスレイヤーとデータアクセスレイヤー内に複数のクラスを作成する必要がありますか?
architecture - 3 層アーキテクチャと n 層アーキテクチャの違い
私の教授は、BLL に複数のレイヤーを追加すると、3 層が n 層アーキテクチャになると言いました。
しかし、私の理解では (私が間違っているかもしれません)、層は物理的な分離であり、レイヤーは論理的な分離であるため、複数のレイヤーを追加しても 3 層アプリケーションのままになりますね。
asp.net-mvc - ASP.NETMVC-GUIのDALから依存関係を削除します
3つのプロジェクトで構成されるMVCWebアプリを構築しています。1つはGUI用、もう1つはビジネスロジック用、もう1つはデータアクセス用です。
データアクセス用に、EFによって生成されたファイルがあるため、「Customer」という名前の生成されたクラスがあります。このクラスの検証属性を作成するには、MetaDataTypeを作成する必要があります(これは同じ名前空間で実行する必要があるため、DALレイヤーで実行する必要があります)-これを実行することで、GUIからデータアクセスレイヤーを参照しますこれは、プロジェクトを分割するというアイデア全体を台無しにします。これは、GUIがDALレイヤーとBLレイヤーの両方を参照するようになったためです。とにかく、GUIレイヤーとDALレイヤーを分離したまま、[必須]などの検証属性を使用することはできますか?
前もって感謝します。
c# - オブジェクト (画像) を 3 つのレイヤー (3 層) で別のオブジェクト (バイト) に変換します。
変換は最初のレイヤー (UI) で行うことができますか?
model-view-controller - 昔ながらの 3 層パターンに対する MVC パターンの主な利点は何ですか?
新しいプロジェクトで MVC パターンを使用することを検討しています。データ層 (モデル) をプレゼンテーション層 (ビュー) に少し近づけることができるという主な利点がはっきりとわかります。アプリケーションの速度で。しかし、パフォーマンスの観点から離れて、view-logic-data 階層型パターンよりも MVC の利点は他にありますか?
編集: 興味のある方のために、MVC の使用をテストするために作成したサンプル PHP コードをアップロードしました。コードを読みやすくするために、意図的にすべてのセキュリティ チェックを省略しました。あまり批判しないでください。より洗練された高度なものになる可能性があることはわかっていますが、それでも機能します!!! 質問や提案を歓迎します: リンクは次のとおりです: http://www.sourcecodester.com/sites/default/files/download/techexpert/test_mvc.zip
c# - 3 層アーキテクチャ
3 層アーキテクチャについていくつか質問があります。
- 3層アーキテクチャでアプリケーションを正しく実装する方法は?
- これらの層の間で通信する方法は?
- データ層は DBMS と完全に同じですか? (ストアド プロシージャを使用する場合や、オブジェクト リレーショナル マッピング フレームワークを使用する場合はどうでしょうか?)
あなたの答えを聞くのを楽しみにしています。ありがとう。
PS: 私が一般的な質問をしていることを理解しないでください。わかった ?大規模なアプリケーションを正しく設計する方法を尋ねています。最善の方法は何ですか?. 長い答えを期待していません。
asp.net-mvc-2 - ASP.NET MVC 2 ロジックを配置する場所
いくつかの複雑なビジネス ルールを持つ ASP.NET MVC 2 アプリケーションがあり、特定のロジックを配置する場所を決定しようとしています。
ロジックは、レコードの特定のフィールドに基づいて、レコードを作成するときに発生し、他のレコードを作成する必要があります。
私は現在、ORM でリポジトリ パターンを使用しており、このロジックを配置する最も簡単な場所はリポジトリ クラスですが、これは重要なルールを配置するにはかなり脆弱な場所だと感じています。部分モデル クラスに直接配置します。検証とメタデータを持っていますが、コントローラーまたはリポジトリ内でメソッドを呼び出す必要があり、実装に関する知識がそれらのレイヤーに拡張されすぎている可能性があります。
私にとってのベストプラクティスのヒントは何ですか?
ありがとう!
spring - 典型的な 3 層アーキテクチャのアクターへの移行
この質問は、しばらくの間私を悩ませています (私だけではないといいのですが)。典型的な 3 層の Java EE アプリを取り上げて、それがアクターでどのように実装されるかを見てみたいと思います。そのような移行を行うことが実際に意味があるかどうか、また、それが意味をなす場合にどのように利益を得ることができるかを調べたいと思います (おそらく、パフォーマンス、より良いアーキテクチャ、拡張性、保守性など...)。
典型的なコントローラー (プレゼンテーション)、サービス (ビジネス ロジック)、DAO (データ) は次のとおりです。
このようなものは、多くの春のアプリケーションで見つけることができます。同期されたブロックがないため、共有状態を持たない単純な実装を使用できます...したがって、すべての状態はデータベースにあり、アプリケーションはトランザクションに依存します。サービス、コントローラー、および dao にはインスタンスが 1 つしかありません。したがって、リクエストごとにアプリケーションサーバーは個別のスレッドを使用しますが、スレッドは互いにブロックしません (ただし、DB IO によってブロックされます)。
アクターで同様の機能を実装しようとしているとします。次のようになります。
ここでは、Get() および Post() エクストラクタがどのように実装されているかはあまり重要ではないと思います。これを実装するためのフレームワークを作成するとします。次のようにコントローラーにメッセージを送信できます。
同じことがコントローラーとサービスによって行われます。この場合、ワークフロー全体が同期します。さらに悪いことに、一度に 1 つの要求しか処理できません (その間、他のすべての要求はコントローラーのメールボックスに届きます)。だから私はそれをすべて非同期にする必要があります。
このセットアップで各処理ステップを非同期に実行するエレガントな方法はありますか?
私が理解している限り、各層は受信したメッセージのコンテキストを何らかの形で保存してから、下の層にメッセージを送信する必要があります。下の層が何らかの結果メッセージで返信する場合、最初のコンテキストを復元し、この結果を元の送信者に返信できるはずです。これは正しいです?
さらに、現時点では、各階層にアクターのインスタンスが 1 つしかありません。それらが非同期で動作する場合でも、1 つのコントローラー、サービス、および dao メッセージのみを並行して処理できます。これは、同じタイプのアクターがもっと必要であることを意味します。これにより、各層の LoadBalancer が表示されます。これは、UserService と ItemService がある場合、両方を別々に LoadBalac する必要があることも意味します。
何か間違ったことを理解しているような気がします。必要な設定はすべて複雑すぎるようです。これについてあなたはどう思いますか?
(PS: DB トランザクションがこの図にどのように適合するかを知ることも非常に興味深いですが、このスレッドではやり過ぎだと思います)
php - PHP の奇妙な for ループ / 配列の問題
これは StackOverflow に関する私の最初の質問であり、率直に言って、私は PHP にかなり慣れていません。簡単な注意事項をお伝えします ;)
3 層アーキテクチャで OOP ベースの Web サイトを構築しています。データ抽象化レイヤーには、データベースとの通信に必要なすべての機能を含む、DbAdapter という名前のオブジェクトがあります。これらの関数の 1 つが次のとおりです。read($sql) は、SQL クエリを受け取り、結果を 2 次元配列に格納します。
このために、ネストされた 2 つの for ループ (行ごとに 1 つと列ごとに 1 つ) を使用します。イテレータ $i は通常どおりインクリメントしますが、どういうわけか配列の最後の要素が上書きされます。
これがどのように可能であるかはまったくわからないので、私が犯した間違いは非常にばかげているに違いありません。
初心者を手伝ってくれる人はいますか?
前もってありがとう、サム