我正在观看有关如何编写更清晰代码的YouTube视频。创作者展示了一个例子,而不是写作:SqlCommand command = new SqlCommand(query, connection);
写作更清晰:var command = new SqlCommand(query, connection);
现在我很好奇:使用var有什么性能差异吗?这是编写干净代码的好方法(我应该开始使用var吗?)
答案 0 :(得分:2)
不,运行时没有性能差异。 var
在编译时被更改为适当的类型。
至于练习有多好:我通常教我的学生使用它,当左手侧的类型从右侧清除时。如:
List<int> myList=new List<int>();
从右侧可以清楚地看到左侧是什么。类似于工厂的方法也是如此。 我不喜欢的是你有这样的方法:
private static int DoSomethingAwesome() {...}
然后它被称为
var x = DoSomethingAwesome();
看看如何通过阅读代码来判断左侧的类型(返回类型没有任何指示)?但我想这可能与品味或观点有关。
答案 1 :(得分:0)
性能没有差异,但我个人认为它提高了可读性。此外,如果你必须更改类型,你只需要在行的一端更改它(非常小的事情,很明显,但它始终发生在我身上。)