Kiss原则
定义
尽量保持简单
目的
Kiss原则是保持代码可读性、可维护性的有效手段,代码简单那么就容易理解,bug就越难隐藏,即便出现bug修复起来也比较简单
代码行数越少就越"简单"吗?
不是,不仅要看代码行数,还需要考虑代码的可理解性、逻辑复杂度、可读性
主要还是看代码的可理解性,代码越容易理解我们才认为代码越简单,如果可理解性差不多那么选择代码行数少的写法
代码逻辑复杂就违背Kiss原则吗?
不是,有些算法或者业务逻辑本身就非常复杂,那么对应的代码实现自然也就复杂,这是无法避免的
如何写出满足Kiss原则的代码
- 不要使用同事们都不熟悉的技术。比如正则表达式。
- 不要重复造轮子,善于使用已有的工具类库。经验证明,自己造轮子出现bug的概率更高。
- 不要过度优化。不要炫技,比如使用位运算替换算数运算、使用一些非常底层的函数等来优化性能,降低代码的可读性。
一定不要过度设计,复杂的事情简单解决越能体现一个人的能力
Yagni原则
定义
不要过度设计。不要设计当前用不到的功能,不要写当前用不到的代码。
总结
Kiss原则告诉我们怎么做:尽量保持简单
Yagni原则告诉我们要不要做:当前不需要的就不做