这主要是由于SQL问题的答案.由于性能原因,故意省略UDF和子查询.我没有包含可靠性而不是它应该被视为理所当然,但代码必须工作.
性能总是先行?如此多的答案以性能为主要优先考虑.我的用户似乎更关心代码的修改速度.因此报告需要15秒而不是12秒才能运行.只要我不找不提供解决方案的借口,他们就可以忍受.
显然,如果15秒变为15分钟,则存在问题,但用户需要该功能.他们希望应用程序适应业务规则更改和增强请求.我希望能够在6个月后查看代码,并且能够在一个容易识别的位置进行更改,而不是追逐所有那些地方,因为他们认为调用另一个函数或子例程或Udf妨碍表现.
所有这一切,我会命令:可维护性(变化是生活中的事实.),性能(没有人喜欢盯着沙漏.),可重用性(很难确定应该再次使用哪些代码).
1.可维护性:如果代码不可读,那么它无用,无论它有多快.它肯定不会被重复使用.
2.可重用性:并非所有代码都可以重用,但很多代码都是可重用的.如果可以,请务必使代码更简单.最简单的是分而治之.例如,创建一遍又一遍地使用的简单组件.UI小部件是最常见的.但它与实用程序相同.同样,为代码创建结构/框架也有帮助.错误验证代码等
3.性能:通常大多数代码都具有足够的性能.如果没有,请使用代码分析器.更多的瓶颈将远远超过您可能以可读性或可重用性为代价的任何小代码优化.