为什么要将公共异步方法的内部逻辑分为私有方法?

时间:2018-11-02 11:33:35

标签: c#

我在同一个类中一直看到这样的代码,我想不出一个理由来分离顺序私有方法。其他人可以给出充分的理由吗?

 public Task<List<myObject>> GetObjectsAsync(object param)
    {
        try
        {
            return Task.Run(() => GetObject(param));
        }
        catch (Exception e)
        {
            //log error
        }
    }

及其附带的私有顺序方法:

private List<myObject> GetObject(object param))
    {
        return _dLayer.GetObject(param));
    }

1 个答案:

答案 0 :(得分:2)

将逻辑块(无论它们多么小)划分为单独的方法总是很好的。 Separation of concerns的适用范围很广,例如适用于单独的程序集,名称空间和类,但适用范围很窄,适用于相关行为的方法和逻辑块。这样一来,便可以清楚自然地看到在哪里可以将代码重构为不同的类,以遵循SOLID中的“ S”(单一职责原则)。

保持较小的方法也很重要,因为它可以提高可读性和可重复使用性。

我很确定这就是您编写这种代码的原因。