yod*_*die 2 c++ function preferences
我有一点争论,想知道那里的人们在想什么:
在C++(或一般)中,您是否更喜欢将代码分解为许多较短的函数,main()仅包含函数列表,按逻辑顺序,或者您是否仅在必要时更喜欢函数(即,它们何时会被重复使用很多次)?或者介于两者之间?
Dig*_*oss 13
传统观念认为较小的功能更好,我认为这是真的.事实上,有一家公司有一个分析工具,根据他们做出的决策与他们所拥有的单元测试数量相比,对各个功能进行评级.
理论是您可能会或可能不会降低整个应用程序的复杂性,但您可以完全控制任何给定函数的复杂程度.
一种称为圈复杂度的测量被认为与不良代码正相关...具体而言,通过一种方法存在的路径越多,其CCN数越高,写入越差,理解越难以及因此改变或甚至是正确的开始,它将需要更多的单元测试.
好的,找到了工具.它被称为,ahem,C hange R isk A nalysis and P redictions index.
最近,只有一次编码信息的原则已经成长为新的缩略词,特别是DRY(不要重复自己)和DIE(复制是邪恶的) ......我相信我们可以部分地感谢RoR社区推广这一理念......