INotifyPropertyChanged の話が、.NET界隈で再び
盛んになっているので乗っかってみる。
とうか、以前書いたのを ziolog PostSharpでINotifyPropertyChaned
今の議論に合わせて実装しなおしてみた。
あと、速度も測ってみた。
プロジェクト (コンパイルにはPostSharpの導入が必要です)
まずは実行速度(10000回実行時の所要時間)
ノーマル: 2ms
PostSharp: 21ms
イケテル: 1860ms
通常実装よりは劣るけど、まずまず?
コードのシンプル具合
public class PostSharpEmp : IImpleNotifyPropertyChanged
{
[Notify]
public string Name{get;set;}
public event PropertyChangedEventHandler PropertyChanged;
public PropertyChangedEventHandler PropertyChangedHandler
{
get { return PropertyChanged; }
}
}
[Notfy]を自動プロパティに付け加えるだけでOKというエレガントさ!
ソース上に、拡張メソッドや属性用のクラスが3つほど出現するけど
すべて使いまわせるので、コード量が多くなるほどこのシンプルさが生きてくるはず。
(そのクラスに関してはソースを参考にしてください。大したコードじゃないです)
結論
PostSharpが最高にクールなのでみんな使おうぜ!
現在のレート 4.4 (10人)
- Currently 4.4/5 Stars.
- 1
- 2
- 3
- 4
- 5