设计异味 设计异味是计算机编程领域设计所用结构违背了基本设计原则并对设计质量有负面影响这个术语源自马丁福勒在重构改善既有代码的设计一书中描述的代码异味 不同作者对异味smell有不同的定义 N Moha等代码与设计异味是差的解决方案导致了实现与设计问题 R C Martin设计异味是腐败的软件的气味 Fowler异味是代码中特定的结构导致了重构的可能 设计异味指示了积累的设计负债技术负债的主要维度Bug与未实现功能不算是设计异味设计异味产生于很差的设计决策使得设计脆弱难于维护在一个软件系统中辨别设计异味应用适当的重构去除异味避免积累技术负债是好的实践 在确定特定结构或决策是否算作设计异味时上下文环境如问题清单设计生态圈平台等扮演了重要角色很多时候由于上下文环境所限只好容忍设计异味