- 核心:用最简单的方法描述解决方案
- 意图:便于沟通和理解,降低复杂性,增加维护性
- 要点:使用团队熟悉的技术进行设计
案例:删除格式化字符串中的指定子串
例如:abc{xxx}de abcde
方案一:使用正则表达式
方案二:使用C语言方式
方案三:使用C++字符串类方式
上面的三种方式,都可以实现相同的功能。但是我们应该如何选择其中某一种方式呢?这需要看我们团队都熟悉哪种方式。不能选择对团队都不熟悉的方式。
简单性 VS 灵活性
- 简单性不等于灵活性
- 简单的设计易于催生灵活的设计
- 过于最求灵活的设计可能导致复杂性的增加