━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■第16回 .NETになって変わったこと(後編)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
前回に引き続き、.NETになって変わったことの後編です。
アップグレードを考える際に特にきちんと考えておくべき事項です。
●非接続型のデータアクセス
VisualBasic6.0の全盛期のアプリケーションは企業内で閉じたものが多かっ
たのですが、現在では企業を超えてアプリケーションを構成することも少な
くありません。
VisualBasic6.0の頃はデータベースに接続したままデータにアクセスする
RecordSetが使われていましたが、分散を想定したアプリケーションでは常
時接続しているのは都合が良くありません。
そのため、.NETでは非接続型のデータアクセスとしてDataSetが登場してい
ます。
また、分散アプリケーションのデータ連携を想定して、XML関連の機能が強
化されているのも特徴的です。
先ほど紹介したDataSetもXMLとして出力することが可能になっています。
もちろん、従来のような接続型データアクセス(DataReader)も使うことが
可能です。
●型付きデータセット
VisualBasic6.0で使われていたRecordSetの場合、SQLが正常に実行されたと
しても、値を取得する際にフィールド名を間違うとエラーになります。※
※ 列番号でも取得は可能ですが、フィールドが途中に追加されると大きな
修正が発生することや、可読性が悪いことからあまり好まれません。
このエラーはコードを実行するまで分からないため、複雑な条件分岐の中で
取得しようとしている場合などはテストが大変です。
ですが、.NETでは、型付きデータセットを作成することが可能です。
型付きデータセットを作成すると、定義したフィールドへのアクセスをプロ
パティ経由で行うことができるようになります。
すると、インテリセンスも働きますので、フィールド名を忘れても候補に現
れますし、手打ちで間違えてもビルド時にエラーになってくれます。
実行する前に打ち間違えが分かりますので、使ってみると大変便利です。
●変数の型、サイズ
変数の型やサイズが若干変更になっています。
例えば、良く使われていた Integer が16ビットから32ビットに変更されて
います。(16ビットを扱うのは Short になりました)
同様に Long も32ビットから64ビットに変更されています。
そのため、.NETでWin32APIを呼び出すとき、宣言する変数の型に注意が必要
になりますが、アップグレードウィザードで変換した場合は、適切に変換し
てくれるので問題はありません。
その他の変更点としては、Variant と Currency が廃止となっています。
Variant は Object、Curency は Decimal に置き換えられます。
Curency よりも Decimal の方が大きな値を扱えますので、便利ですね。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━