有很多方法互相引用是不是很糟糕,就像下面的例子一样?
public void MainMethod()
{
GetProducts();
}
public void GetProducts()
{
var _products = new Products();
var productlist = _products.GetProductList;
GetExcelFile(productlist);
}
public void GetExcelFile(List<product> productlist)
{
var _getExcelFile = new GetExcelFile();
var excelfile = _getExcelFile.GetExcelFileFromProductList(productlist);
//create excel file and so on...
}
所以我正在为每一个小 Action 创建一个新方法。从 MainMethod
调用 GetProducts
并在该方法中执行所有
操作也同样容易,但我认为这不是方法创建可重用的代码。
下面的内容告诉我,一个方法中的语句不应超过 7 条:
因此,使用最少代码量的方法的优点:
- 代码可重复使用
- 每个任务都有自己的方法
使用最少代码量的方法的缺点:
- 就像意大利面条代码
- 你得到:引用引用等等
我的问题:
我的方法应该更大,还是应该继续创建小方法,这些方法作用很少并引用很多其他方法?
最佳答案
指导方针是正确的。方法应该很小,并且您正在做正确的事情,不仅为每个操作提供了自己的方法,而且还为每个操作提供了一个明确定义的名称。如果这些方法有一个明确的名称、一个职责和一个明确的意图(并且不要忘记将命令与查询分开),那么您的代码将不会是意大利面条。最重要的是,尝试像新闻文章一样对方法进行排序:最重要的方法位于文件顶部,最详细的方法位于底部。这样其他人就可以从顶部开始阅读,并在感到无聊(或有足够的信息)时停止阅读。
我可以建议您获取 Robert Martin's Clean Code 的副本。业内没有人比他更清楚地描述这一点。
关于c# - 方法中的方法中的方法c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18440836/