Home > Visual Studio 2008 > 自動プロパティ、イニシャライザ

自動プロパティ、イニシャライザ

C#3.0で実装された機能で、弁慶フレームワークに影響を与えそうなものが、この2つです。

自動プロパティ

自動プロパティを使うことで、プロパティの記述をかなり省略できます。
従来であれば、privateなメンバ変数を用意し、このメンバ変数へのアクセサとしてプロパティを定義していたのですが、以下のように書くことができるようになります。
メンバ変数を省略するため、直接メンバ変数を操作できなくなるデメリットがありますが、弁慶フレームワークのEntityクラスのように、プロパティだらけのクラスの場合はすっきりさせることができます。

	// 従来の場合
	private string _test;

public string Test
{
get
{
return _test;
}
set
{
_test = value;
}
}


// 自動プロパティの場合
public string Test { get; set; }

イニシャライザ

プロパティの定義だけでなく、プロパティの利用も簡略化可能になります。
従来、プロパティの初期値をセットする場合、オブジェクトを new した後、各プロパティをいちいちセットしていました。
プロパティが多い場合は、オーバーロードされたコンストラクタを用意しておき、一気にセットする方法も考えられます(というか、弁慶フレームワークではこうなっています)。
新たに追加されたイニシャライザでは、{ } を使って、まとめてセットすることができるようになります。
ついでに言っておくと、このイニシャライザは大変優秀で、コレクションの初期値を設定することもできます。使い方は同じです。

	// 従来の場合
	Test test = new Test();
	test.Name = "Hoge";
	test.Address = "Moge";
	test.Age = 20;


// イニシャライザの場合
Test test = new Test { Name = "Hoge", Address = "Moge", Age = 20 };

弁慶フレームワークのEntityは、メンバ変数とイニシャライズ可能なコンストラクタが無くなることになりそうです。

Comments:0

Comment Form

Trackbacks:0

TrackBack URL for this entry
http://magicbox.sakura.ne.jp/mt/mt-tb.cgi/448
Listed below are links to weblogs that reference
自動プロパティ、イニシャライザ from 爆裂!C#野郎

Home > Visual Studio 2008 > 自動プロパティ、イニシャライザ

Search
Feeds
Tag Cloud
Recommend

SQLパズル 第2版 プログラミングが変わる書き方/考え方
SQLパズル 第2版 プログラミングが変わる書き方/考え方

ソフトウェアアーキテクチャ―ソフトウェア開発のためのパターン体系
ソフトウェアアーキテクチャ―ソフトウェア開発のためのパターン体系

ITアーキテクト vol.1
ITアーキテクト vol.1

オブジェクト指向における再利用のためのデザインパターン
オブジェクト指向における再利用のためのデザインパターン

増補改訂版 Java言語で学ぶデザインパターン入門
増補改訂版 Java言語で学ぶデザインパターン入門

増補改訂版 Java言語で学ぶデザインパターン入門 マルチスレッド編
増補改訂版 Java言語で学ぶデザインパターン入門 マルチスレッド編

J2EEデザインパターン
J2EEデザインパターン

アンチパターン―ソフトウェア危篤患者の救出
アンチパターン―ソフトウェア危篤患者の救出

世界でいちばん簡単なネットワークのe本―ネットワークとTCP/IPの基本と考え方がわかる本
世界でいちばん簡単なネットワークのe本―ネットワークとTCP/IPの基本と考え方がわかる本

Return to page top