《C++代码整洁之道:C++17 可持续软件开发模式实践》 —3.3 不需要原则(YAGNI)
【摘要】 本节书摘来自华章计算机《C++代码整洁之道:C++17 可持续软件开发模式实践》 一书中第3章,第3.3节,作者是[德]斯蒂芬·罗斯(Stephan Roth),连少华 郭发阳 陈涛 译。
3.3 不需要原则(YAGNI)
总是在你真正需要的时候再实现它们,而不是在你只是预见到你需要它们的时候实现它们。
—Ron Jeffries, You抮e NOT gonna need it! [Jeffries98]
这一原则与之前讨论的KISS原则紧密相连。YAGNI是“You Aren抰 Gonna Need It!”的缩写,也可以看作“You Ain抰 Gonna Need It!”的缩写。YAGNI原则向投机取巧和过度设计宣战,它的主旨是希望你不要写目前用不上,但将来也许需要的代码。
几乎每个开发者在日常工作中都有这样一种冲动:“以后我们也许会用到这个功能……”错,你不会用到它!无论在什么情况下,你都要抵制开发以后可能用到的功能。毕竟,你可能根本不需要这个功能。如果你已经实现了这种无意义的功能,那么你花在那上面的时间就浪费了,并且你的代码也变得更加复杂!当然,你也破坏了KISS原则。更严重的是,这些为日后的功能做准备的代码,充满了bug并可能导致严重的后果!
我的建议是:在你确定真的有必要的时候再写代码,那时再重构仍然来得及。
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)