C#编码最佳做法

时间:2018-11-22 16:36:12

标签: c#

我当前正在做的工作需要我将VB.Net代码转换为C#。 我一直在主要使用“构建器模式”,这使我转换了许多函数,这些函数是一个函数的一次调用。 SomeFunction(var1,var2,var3)转换为:

Dim Director As New SomeDirector
With Director
.SomeProperty = SomeValue
.SomeProperty2 = SomeValue2
End With

我担心的是,这将创建5-6行代码,而不是一行代码。我可以用一种更简洁的方式来做到这一点吗?还是最好有5-6行代码?

谢谢!

3 个答案:

答案 0 :(得分:1)

如上所述,您可以使用对象初始化在C#中执行类似的操作:

var Director = new SomeDirector { SomeProperty = SomeValue, SomeProperty2 = SomeValue2 };

这不需要您编写显式构造函数。

答案 1 :(得分:0)

一种简洁的编写方法是使用SomeDirector类中的构造函数:

public SomeDirector(int value1, int value2)
{
    this.SomeProperty = value1;
    this.SomeProperty2 = value2;
}

然后您的代码示例变为:

var director = new SomeDirector(someValue, someValue2);

这里的想法是,尽管构造函数看起来有些long,但它却藏在类中,并且调用它的代码简洁明了(并且您不能忘记一个重要的属性)。

如果您想知道,没有C#等效于VB的with关键字。

答案 2 :(得分:0)

更多关于您的问题的一般答案: 从理论上讲,您拥有多少行代码无关紧要,而要执行多少资源却无关紧要。但是,最佳实践也与人类可读性有关,因此它实际上取决于情况。您是否需要针对性能或进一步开发进行优化。在大多数情况下,作为开发人员,这比没有完整洞察力的其他人更了解。