R.Tanaka.Ichiro's Blog

主にC# な話題です

目次

Blog 利用状況

ニュース

部分型定義(その2)

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 に属するクラスを使ったもろもろの処理・・・
  }
}


[次回へ続く...]

投稿日時 : 2007年4月5日 10:46

Feedback

# re: 部分型定義(その2) 2007/04/05 13:29 シャノン

> (面白いってどういうことだ!ごるぁ!)

あまり推奨したくない使い方ですね。
Text寄りの方とData寄りの方に関連が薄いのであれば、2つのクラスにした方がいいかもしれません。

# re: 部分型定義(その2) 2007/04/05 22:06 Jitta

> 以下は、C# で Form1 というフォームクラスを追加した時に、自動的に作成されたファイルのサンプルです。
> さて、話を元に戻します。
 あ、あれ??

> [次回へ続く...]
じゃぁ、待つ。

# re: 部分型定義(その2) 2007/04/06 9:32 R・田中一郎

シャノン さん

>あまり推奨したくない使い方ですね。

ケースバイケースということでひとつ。

>Text寄りの方とData寄りの方に関連が薄いのであれば、2つのクラスにした方がいいかもしれません。

そういう場合の方が多いのでしょうね。

------------------------------------------------
Jitta さん

> あ、あれ??
ちょwwww
一応、語りつくしているつもりな訳ですがwww

他のメリットがあれば、僕も教えて欲しいくらいです。

>> [次回へ続く...]
>じゃぁ、待つ。

怖いよー。Jittaさんが待ち構えているよー(T-T)

# re: 部分型定義(その2) 2007/04/07 21:28 Jitta

どうも、href="..." と書いちゃうと、トラックバックが働かないみたい。。。
なので、手動!
http://blogs.wankuma.com/jitta/archive/2007/04/07/70528.aspx

# 部分型定義(その3) 2007/04/11 11:49 R.Tanaka.Ichiro's Blog

部分型定義(その3)

# 部分型定義(その4) 2007/04/12 10:58 R.Tanaka.Ichiro's Blog

部分型定義(その4)

# 部分型定義(その3) 2007/04/12 13:09 R.Tanaka.Ichiro's Blog

部分型定義(その3)

タイトル
名前
Url
コメント