Tôi có biết 1 thư viện cho C# có tên PortSharp.
Khi đặt Attribute của nó trước class hoặc method thì khi thực thi xong các method, property của đối tượng đó nó sẽ tự động gọi một phương thức khác mà không cần viết trong mã. Điều này tiết kiệm rất nhiều thời gian viết code cũng như số lượng code.
Bạn nào biết cách thiết kế kiểu Attribute này không xin chỉ giáo dùm 
Đây là mô tả 2 kiểu code có chức năng tương tự nhau:
Của mình (dài lê thê)
class MyClass :InotifyPropertyChanged{
public PropertiChangedEventHandler PropertiChanged;
private void NotifyProperty([CallerMenberName]string name = null){
if(PropertyChanged !=null) PropertyChanged(this,....);
}
private int _ID=0;
public int ID{
get{return _ID;}
set{
_ID=value;
NotifyProperty();
}
}
}
PortSharp (ngắn và sáng sủa hơn rất nhiều)
[NotifyPropertyChanged]
class MyClass{
public int ID{get;set;}
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?