Delegate
在C#编程中通常会碰到许多重复劳动的情况,而面向对象编程的原则就是消除这些重复劳动,增加代码重用性。我们虽然有很多基本的模式去做抽象和封装,但还是会碰到一些看似不得已的重复劳动的情况。比如你在写一个数据访问层的类,按照规范,每个方法都需要加try-catch,就像这样:
public void Method1()
{
try
{
// logic...
}
catch (DataException ex)
{
// fuck the ex...
}
}
public void Method2()
{
try
{
// logic...
}
catch (DataException ex)
{
// …