掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
テーブルのデータをクラスでもちたいのですが。 (ID:105951)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
テーブルをクラスにするかレコードをクラスにするかによって処理はかわりますが 両方ならばまずレコードをクラスにします。 たとえばclsRecordというクラスを作成します。 これには外部に公開する部分と隠蔽する部分を考えなければなりません。 まずモジュール内でPrivateな構造体を用意します Private Type RECORD_DATA .Name As String .Age As Integar End Type これで構造体の宣言ができました さらに構造体のインスタンスもモジュール内Privateで宣言します Private udtUserData As RECORD_DATA これがこのクラスの隠蔽部分です この構造体にアクセスするためのインターフェースとして プロパティを設定すればレコードのクラスが完成します。 次にテーブルクラスを同じように公開する部分と隠蔽する部分の処理を実装し 作成します。 例えばデータベースのファイルパスプロパティやテーブル名プロパティなどです。 こうして作成したテーブルクラスにレコードクラスのインスタンスを コレクションにして持たせ、それに対するインターフェースを付けることによって クラスが完成します。 DBの更新もクラスで行うということなのですが、これはそれぞれのクラスに DBを操作するメソッドを実装することによって可能になります。 こうすればデータアクセスオブジェクトを外部から意識せず操作することが可能に なります。 ようするにDBを操作するコードをメソッドの中に隠蔽してしまうというわけです。 クラスの利点は、外部からいじられたくない部分をクラス内に隠蔽することによって、そのクラスを使う側からは簡単に目的の処理を実行できることにあります。 そのほかにも、こうしてカプセル化しておけば再利用が容易であるという利点もあります。 これがオブジェクト指向という考え方です。 これらの実際のコーディングに関しては、VBを使ったオブジェクト指向に関する書籍などを参考にすることをおすすめします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.