吴秀祥的博客

软件之美在于她的外在功能、内部结构和团队创建她的过程。
  首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  设计原则

摘要:Dependency-Inversion Principlea.高层模块不应该依赖于低层模块,二者都应该依赖于抽象.b.抽象不应该依赖于细节,细节应该依赖于抽象.高层模块包含了一个应该程序中的重要的策略选择和业务模型.正是这些高层模块才使得其所有的应用程序区别于其他.如果高层依赖于低层,那么对低层模块的改动就会直接影响到高层模块,从而迫使它们依次做出改动.类似于OCP原则.每个较高层次都为它所需要... 阅读全文

posted @ 2005-07-07 10:35 吴秀祥 阅读(616) 评论(0) 推荐(0)

摘要:Ivar Jacobson:任何系统在其生命周期都会变化,如果我们期望我们开发的系统不会在第1版后就被抛弃,就必须牢记这一点.Open-Closed Principle1.Open(Open for extension)模块的行为必须是开放的,支持扩展的,而不是僵化的.2.Closed(Closed for modification)对模块进行扩展时,不应该影响或大规模影响已有模块的其他部分. ... 阅读全文

posted @ 2005-07-07 09:13 吴秀祥 阅读(2030) 评论(0) 推荐(0)

摘要:这条原则又叫高内聚性(cohesion)原则,以前我们在面向过程时代提倡模块应该是:高内聚,低耦合(当然这条原则几乎是软件设计的根本原则).所谓职责,我们可以理解他为功能,就是设计的这个类功能应该只有一个,而不是两个或更多.也可以理解为引用变化的原因,当你发现有两个变化会要求我们修改这个类,那么你就要考虑撤分这个类了.因为职责是变化的一个轴线,当需求变化时,该变化会反映类类的职责的变化.比如我们要... 阅读全文

posted @ 2005-07-07 08:48 吴秀祥 阅读(1011) 评论(0) 推荐(0)