如何成为更好的软件架构师?这篇3.8K star的文章值得一看( 九 )

\n

简化

\n

时刻记住奥卡姆剃刀原则 , 也就是简单即正义 。 我对这个原则的理解是这样的:如果你的解决方案是在做了很多假设的基础上提出来的 , 那么你的方案很可能是错的 , 也很可能会变得极其复杂 。 这个时候你就应该减少(简化)一些假设 , 以获得更好的解决方案 。

\n

多方位观察解决方案:为了简化解决方案 , 经常需要你调整对解决方案的观察角度 。 比如 , 你可以尝试通过自顶向下和自底向上的思考来获取解决方案 。 如果你有一个数据流或流程 , 那么首先考虑从左到右 , 然后再考虑从右到左 。 在简化过程中询问自己:「在完美的世界里 , 你的解决方案需要做什么修正吗?」 , 或者「某公司/某人会怎么做?」 。 这两个问题都可以帮助你按照奥卡姆剃刀原则来简化假设;

\n

退一步:经过激烈而漫长的讨论后 , 常常会得到一些极其复杂的方案 。 永远不要把它们当做最终的结果 。 「退一步」的意思就是:再次从宏观角度看一下这个问题 , 当下的方案还说的通吗?然后再在抽象层面对方案进行重构 。 有时候暂停讨论第二天再继续是个不错的选择 。 至少对于我来说 , 我的大脑需要一些时间来处理信息 , 想出更好、更优雅和更简单的解决方案;

推荐阅读