这是干净的代码吗?(.净,c#)
本文关键字:代码 | 更新日期: 2023-09-27 17:50:41
在我们的一个项目中,我发现了以下代码
class A
{
private B b = new B();
protected void AMethod()
{
var x = b.DomeSome();
}
}
我的问题是,这是一种"干净"的编码方式吗?在method中实例化b会更简洁吗?是依赖吗?
如果在AMethod
中创建b的实例,则在AMethod
结束后该变量将丢失。所以每次调用AMethod
都会创建一个新的对象b。
另一方面,在类级别声明变量(如在您的示例中)将允许您为AMethod
的所有调用重用B的实例。
没有确切的答案如何更干净,除非你提供给我们更多的背景
如果DomeSome
改变了B
的状态,如果B
在每次调用AMethod
时都被实例化,那么逻辑将会不同。
对于给定的代码量:代码是干净的,它取决于。
在method中使用实例b会更简洁吗?
就不一样了。在当前代码中,A被实例化时b也被实例化。
是的list依赖吗?
是,这完全取决于你的要求。B
类型的b
变量可能在其他地方也需要,因此它已在Class
中声明。
在clean coding
上没有硬性定义的规范。保持编码,只要它简洁,可理解,并做它需要做的。
我还假设您已将变量名称更改为A &张贴在这里…如果这些存在于实际代码中…现在就改!!