知识卡片

评价一个架构好不好,要用可靠性、可扩展性、复用性这几个具体标准,而不是"看起来美不美"

专业/工作

内容

判断一个软件架构是否值得推崇,不能停留在”这个设计看起来优雅”这种主观印象上,而应该拆解成几个可以被具体讨论的标准:可靠性(能不能帮你写出正确、健壮的软件)、可扩展性(应对变化容不容易)、复用性(这个方案是不是足够通用,可以直接作为组件插入新场景而不用重新定制)。这几个标准的价值在于它们把”美”这种容易流于口味之争的评价,转化成了可以针对具体场景逐条检验的问题——面对”面向对象好还是函数式好”这类范式之争时,与其笼统地站队,不如把讨论拆解到”这个具体场景下,哪种做法在可扩展性上代价更小”,这样的讨论才有真正的说服力,而不是变成审美偏好的对撞。

参考来源

《架构之美》第13章《软件架构:面向对象与面向函数》