http://blogs.wankuma.com/rti/archive/2007/04/04/70109.aspx
部分型定義
の続きです。
前回のサンプルを読んで「こんなことをして何の得があるんだ?」と思ったかたもいらっしゃるかもしれません。
しかし、目的に応じてメンバを分けたり、複数の人数で開発するような場合に、とても便利な機能です。
ところで、
デザイナ
を使ってフォームを作るとファイルが二つに分かることはご存じでしょうか?
実は、これもパーシャルクラスによるものです。
以下は、C# で Form1 というフォームクラスを追加した時に、自動的に作成されたファイルのサンプルです。
ファイル名:Form1.cs
public partial class Form1 : Form
{...
ファイル名:Form1.Designer.cs
partial class Form1
{...
さて、話を元に戻します。
僕は、一人で開発する場合でも、頻繁に変更が生じるメンバと、殆ど変更しなくてよいメンバを分けたり、メンバを機能別グループに分けて管理したい場合などに利用しています(と言うか、利用し始めました)
また、ファイルごとに using ディレクティブを個別に設定できるため、例えば、以下の C# のサンプルコードのように System.Text 名前空間に近しい処理をするファイルと、System.Data 名前空間に近しい処理をするファイルと言ったような分け方をするのも面白いかもしれませんね。(面白いってどういうことだ!ごるぁ!)
ファイル名:MyClass.cs
using System.Text;
public partial class MyClass : MyBaseClass {
public MyClass() {
// コンストラクタ
}
public void Method() {
// System.Text に属するクラスを使ったもろもろの処理・・・
}
}
ファイル名:MyClass1.cs
using System.Data;
partial class MyClass {
public void Method1() {
// System.Data に属するクラスを使ったもろもろの処理・・・
}
}
[次回へ続く...]