-1

私は OOP とソフトウェア設計全般に不慣れで、一連のデータ ソースからデータベースにデータを入力するプログラムを作成する任務を負っています。私の質問は高レベルです。クラスを設計するための優れた/柔軟な/論理的な方法は何ですか? これから構築するターゲット データベースには、約 40 の定義済みテーブルがあります。さらに、これらのテーブルは関連情報の 10 セット (テーブルセットと呼びましょう) にグループ化されます。DataBase私の最初のアイデアは、 、TableSet、およびの3 つのクラスを持つことでしたTable

  • DataBase クラスは、TableSets (1 ~ N) の配列を保持します。

  • TableSet クラスには、その TableSet 内のテーブルの配列があります。

  • Table クラスはデータを保持するだけです

メソッドについては、次のようなものを考えていました

DataBase.PopulateTableSet(tableSetNum)
TableSet.PopulateTable(tableNum)
Table.RunQuery or some other method to get the right data

これを行うための良い方法について何か提案があれば、どんな種類の助けにも本当に感謝しています. ご覧いただきありがとうございます。

4

3 に答える 3

1

ORM (オブジェクト関係マッピング) を使用できます。ORM は、DB テーブル (リレーション) をコード内のクラスにマップできます。手作業で多くの作業を行う必要はありません。C# を使用している場合は、Entity Framework または Nhibernate を使用できます。Java の場合、Hibernate を使用できます。

これらのリンクを使用して、さらに学習することができます。

http://en.wikipedia.org/wiki/Object-relational_mapping

http://nhforge.org

http://msdn.microsoft.com/en-us/data/ef.aspx

http://www.hibernate.org/

于 2012-12-05T16:28:58.873 に答える
0

おそらくあなたが読みたいと思うのは、3 層のアプリケーション開発パラダイムです。基本的に、データソース (SQL データソースなど) の読み取りと書き込みができるクラスを設計する必要があります。

次に、ロジック レイヤー (ビジネス ロジックと呼ばれることもあります) が必要になります。ロジック クラスでは、SQL ステートメントの作成、計算の実行などを行い、最後に GUI レイヤー (win フォームなど、使用したいものは何でも) を作成します。

SQL クラス、MSAccess クラス、または読み書きするデータ ソースなど、各層に複数のクラスが必要な場合があります。

DataTables を調べたい場合は、http://www.dotnetperls.com/をチェックしてください。

于 2012-12-05T16:34:22.040 に答える
0

私はオブジェクト指向は初めてではありません。しかし、私は C# を初めて使用し、開発中のアプリケーションはデータベースと密接に連携するようになりました。そのアプリケーションでは、Entity Framework を使用することにしました。これにより、データベースの操作がほぼ透過的になりました。

データベース ファーストのアプローチは非常に簡単であることがわかりました。データベースを作成し、エンティティ モデルを追加して、Visual Studio でデータベースから作成するだけです。次に、データベース作業を行うために使用するクラスのリストを取得します。

自分で DB を開始する場合は、テーブルに「複数の」名前を付け、アンダースコアを使用しないなどのいくつかの規則に従うと、大きな助けになります (例: 「ユーザー」テーブルの場合は、「」と呼びます)。ユーザーの)。

始めるのに役立つビデオがいくつかあります。これは、私が良いスタートを切ったビデオシリーズです。他にも見つけました。しかし、私はそれらをもう一度見つけなければなりません。

于 2012-12-05T16:58:03.360 に答える