写点什么

设计模式之美 -- 经常被用错的 KISS、YAGNI 原则

作者:GalaxyCreater
  • 2023-04-05
    广东
  • 本文字数:405 字

    阅读完需:约 1 分钟

KISS 原则

内容: 让代码尽量保持简单


代码越少越符合 KISS 原则吗?

答:不一定。

假如实现一个 IP 地址校验的功能,有 3 种实现方式:

  1. 直接一个正则表达式搞定(正则不是每个人都那么容易理解的,且容易出错)

  2. 使用现有的一些工具类 StringUtils、Integer 实现

  3. 什么工具类都不用,自己实现(好处仅仅是用复杂换取微弱的性能优势)


代码逻辑复杂就违背 KISS 原则吗?

如果本身就是个复杂问题,那不算;如果问题本身简单,为了不明显的收益,引入复杂的算法,那就违背。


如何写出满足 KISS 的代码?

  • 不要使用其他人可能不懂的技术实现代码

  • 不要重复造轮子

  • 不要过度优化,不要过度使用些奇技淫巧。

越是简单的方法解决复杂的问题,越能体现能力


YAGNI--You Ain’t Gonna Need It

直译:你不会需要它。不要去设计当前用不到的功能,不要去编写当前用不到的代码。(不代码不需要考虑代码的扩展性,还是要预留好扩展点)

核心思想:不要过度设计。


和 KISS 区别

KISS 强调的是“如何做”,YAGNI 强调的是“不要做”


发布于: 刚刚阅读数: 5
用户头像

GalaxyCreater

关注

还未添加个人签名 2019-04-21 加入

还未添加个人简介

评论

发布
暂无评论
设计模式之美--经常被用错的KISS、YAGNI原则_设计模式_GalaxyCreater_InfoQ写作社区