java深度学习

YAGNI原则之深度思考

2020-05-08  本文已影响0人  安静的猫咪先生

什么是YAGNI?

YAGNI 是 You aren’t gonna need it 的缩写。该原则的基本含义就是,不应该开发任何当前不使用的功能。因为这些占用开发成本的功能,可能根本没有人用。而且不仅仅是开发成本打了水漂,你还要不断投入维护成本,来保证这些无人使用的功能可以正常运行。

YAGNI原则之深度思考

看似简单,执行不简单

作为一名程序员,一般都具有良好的抽象能力和超前思维。编写更健壮的、扩展性更好的,复用性更强的代码,往往是许多程序员的理想和目标。但是,这种程序员的思维定势也容易将软件开发推向一个大家都不愿见到的局面。常见的不良局面可能是以下几种:

所以,合格的程序员和优秀的程序员之间的区别,有一个重要的标志,就是是否拥抱YAGNI原则。优秀的程序员应该是充分理解YAGNI原则,并且能真正地执行。

YAGNI vs 未雨绸缪/扩展升级

可能有读者要问,YAGNI要求不应该开发任何当前不使用的功能。那难道软件开发就不需要未雨绸缪了,不考虑未来扩展和升级了?

笔者认为:

3者因关注度不同,并不冲突。

总结

拥抱YAGNI原则,可以提高开发效率,降低开发和维护成本,避免过度设计等一系列问题。是软件开发过程中的重要且必要原则之一。

上一篇 下一篇

猜你喜欢

热点阅读