繁体   English   中英

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

[英]Why should I separate internal logic of a public asynchronous method into a private method?

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

 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));
    }

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM