VB.NETをつつく29−部分型。コード合体♪2008-11-25 Tue 10:39
今回は部分型をつつくピヨ♪部分型はVSを使っている人ならばおなじみだと思うピヨ♪VB.NETでWindowsフォームアプリケーションを作ると次の様なコードが作成されるよね?
これだけだと何のことやら分からないピヨ。普通にしか見えないからね。じゃあ他のファイルがどこにあるのかというと、VSのソリューシュンエクスプローラで、左から2つ目にある「全てのファイルを表示」とチップで表示されるボタンをクリックしてから、ソリューシュンエクスプローラ上にあるForm1.csの+をクリックしてみよう。すると、Form1.Designer.vbというファイル名が見つかるピヨね。このファイルを覗いてみよう。
察しがいい人はもう分かったと思うけど一応囀るピヨ。 Partial Class クラス名 と打つと部分型を宣言したことになるピヨ♪ 見てのとおりこっち側はPartial Classって宣言されているピヨッ♪こんな具合に複数のファイルで一つの型を記述できるピヨ♪複雑な型を書いている時に便利かもね♪ これは一件単純な機能だけど、よく考えると幾つかの疑問が頭をよぎるピヨね。まず気になるのは1つのファイルで部分型を宣言した場合の事ピヨ。部分型というんだから、一つにしたら不味いのかな?疑問が出たら即実装!実際にやってみたピヨ♪
さてどうなるのかな♪エラーもしくは警告が表示されるかな♪わく♪わく♪・・・ 結果は、残念ながら何にも起こらなかったピヨォ。何かが起こることをちょっと期待したんだけど、まぁ部分型と宣言しておいて、1ファイルで記述しても問題は無いピヨ。一旦コンパイルしたい時もあるからね。 といっても問題ないのは、直ぐ後で違うファイルへ型を書く場合のみピヨ。ありふれた名前の型を無闇に部分型にしてしまうと偶然に一致してしまう事があるから、原則的にはPartialは書かないほうがいいピヨ。ある程度大きなプロジェクトで、偶然に複数のファイルに同じ型名があった場合の挙動が予測できなくなるから駄目ピヨ。とはいえ、同じ型名がある事自体が設計ミスなんだけど、設計ミスはありふれた事だから無理して書かないほうが無難ピヨ。 ちなみに、構造体とインターフェイスにも使えるピヨ。クラスだけじゃなくて、部分インターフェイス、部分構造体に出来るって事だね♪なるピヨ、だから部分型なんだね♪他にもつつきたいことは沢山あるけど、長くなりすぎるので次回へ続く♪ |
この記事のコメント |
コメントの投稿 |
||
|
||
管理者だけに閲覧 | ||
|
この記事のトラックバック |
| 無差別に技術をついばむ鳥 |
|