データベースアプリケーションのベストプラクティス
-
10-07-2019 - |
質問
コミュニティが「ベストプラクティス」と見なしていることを自問しました。データベースのフロントエンドの構築に関して。
e.g。:
すべてのフォームに独自の接続が必要ですか?
データベース関連のものはすべて別のレイヤーに入れるべきですか?つまり、データベースをすべて処理するクラスを作成し、それをフォームなどからインスタンス化しますか?
分離規則に従うべき厳密性、つまり、SQL文字列、接続文字列を配置する場所。すべてのフォームコード(検索可能)、グローバル変数としての個別の(ソース)ファイル、XMLファイル、またはソースコード内のどこでも、SQLサーバー上のみ?
etc。
解決
Webアプリケーションを構築する場合、通常、3つのロジック層があります。
- プレゼンテーション層
- ビジネスロジックレイヤー
- データアクセスレイヤー
最後の層は、データベースの管理に関するすべてを行います。
ビジネスロジックレイヤーは、データアクセスレイヤーを使用せずに、データベースと直接通信しないでください。
それが私の最善のアドバイスです
他のヒント
これらの間違いを行わないでください。
お使いの言語のアプリケーションアーキテクチャのベストプラクティスを読んで、人気のあるフレームワークを読んでください。 この質問に対する答えは、3学期または4学期分のアプリケーションアーキテクチャクラスを簡単に満たすことができます。
データベースのトランザクションモデルを理解します。 OracleとSQL Serverは両方ともトランザクションをサポートしますが、それらの動作は静かに異なります。
これは非常に広範な質問であり、簡単な答えはありません。これが中小規模のプロジェクトである場合、接続文字列をweb.config(connectionStringsセクション)に配置し、組み込みのSqlDataSourceコントロールを使用してアクセスします。
プロジェクトの異なるレイヤーを分離することは常に最善です。 MVCフレームワークを調べてください。