做公共课&减慢代码的速度?

时间:2016-06-16 10:16:34

标签: c# winforms visual-studio

我的老师总是说我们不应该在编程时多次编写相同的代码部分。但是,优先考虑的代码应该是强大的吗? 快速使用类和方法而不是永远记下相同的代码?!调用类比直接代码花费的时间多一点吗?!

例如,如果我想这样做:

Program1.Action1();
Program1.Action2();
Program1.Action3();
& 
Program2.Action1(); 
等等等

我希望这些操作尽可能快地执行,我可以调用actions()或写下完整的代码吗?!

他的问题导致了另一个问题: 对于一个项目,我们需要让老师轻松阅读,因此我们在visual studio上有很多“class tab”,我们将所有内容公开,并在mainform中调用我们的类或方法。

好吧它非常有条理,非常容易阅读,但是不会让代码变慢?! 公共“class tab”比我们的mainform中的私有类慢吗?! 我没有在任何地方找到任何隐瞒的东西..谢谢。

2 个答案:

答案 0 :(得分:4)

您始终可以考虑分析的效果。

但实际上,在编译代码时,你应该相信C#会比你做出更好的选择更好。

你在问题​​中陈述的内容对我来说似乎是不必要的微观优化,可能不会造成一些差别。

可读性和扩展程序的能力是更重要的考虑因素:计算机每年的速度趋于加倍,但程序员的成本越来越高。

答案 1 :(得分:1)

你有一个主要问题和一些问题。

让我分开处理;第一:公共和私人本身不是更快或更慢。理论上,编译器 可以在涉及私有方法时进行更多优化,但我不认为有很多情况可以产生影响。所以,简短的回答是不,公众不会减慢您的代码

简单的函数调用具有可忽略的成本。如果你没有编写一些循环超过百万次和数百万次的数字密码链代码,那么函数调用的代价就不用担心了。

因此,如果您没有性能问题,则不应该关心它们。在学习的同时帮自己一个忙,并将其写下来10次:如果你没有性能问题,你就不应该关心它们。

您应该专注于代码可读性和算法复杂性,而不是关于可能会或可能不会改善“性能”的微优化,但可能很容易使代码复杂化并产生错误。

易于阅读和测试至关重要(我敢说吗?)98%的软件开发。