深入理解软件设计原则 第 6 篇1.代码复用无论是开发何种软件产品,成本和时间都最重要的两个维度。
设计模式创始人之一的埃里希·伽玛1, 在谈到代码复用中设计模式的角色时说:我觉得复用有三个层次,在最底层,你可以复用类、类库、容器, 也许还有一些类的“团体(例如容器和迭代器)”。框架位于最高层。
中间层次的优点在于模式提供的复用方式要比框架的风险小。创建框架是一项投入重大且风险很高的工作。模式则让你能 独立于具体代码来复用设计思想和理念。2.扩展性变化是程序员生命中唯一不变的事情。
你设计了一款优秀的电子商务网站构架, 但仅仅几个月后, 客户就要求新增接受电话订单的功能。 每位软件开发者都经历过许多相似的故事, 导致它们发生的 原因也不少。
这也有好的一面: 如果有人要求你对程序进行修改, 至少说明还有人关心它。因此在设计程序架构时, 所有有经验的开发者会尽量选择支 持未来任何可能变更的方式。