
面向对象
MyMichael
Michael
展开
-
策略模式--我叫它算法模式
原创,转载请注明出处,谢谢! 1 问题是什么? 爷爷 如果一个软件实体(类或者模块等)内部经常变化的是算法,比如传入、参数返回类型等等要经常变化,就像商场的里打折方法那样。算法的多样性大大影响使用算法的用户(收银员等)。 2 如何解决? 我们需要屏蔽变化。 如何做? 抽象一个算法类,各种各样的算法派生自它。为了不让使用原创 2012-11-16 16:48:14 · 726 阅读 · 0 评论 -
数据抽象和层次关系
原创,转载请注明出处,谢谢! 替换能力在面向对象编程里是一个原则。它指出在计算机程序里,如果S是T的子类,那么T的对象能够被S的对象替换,也就是说S的对象可以代替T的对象,不需要改变程序的任何属性--正确性等等. 更正式的说,里氏代换原则((LSP) 是一个子类关系定义, 被称为强类型的子类定义,是在1987年最初由Barbara Liskov在一次主题为数据抽象和层次关系翻译 2012-11-16 10:26:18 · 1384 阅读 · 0 评论 -
依赖(耦合)倒转原则
依赖也就是耦合,共分为下面3种。 零耦合(Nil Coupling)关系:两个类没有依赖关系。 具体耦合(Concrete Coupling)关系:两个具体的类之间有依赖关系,如果一个具体类直接引用另外一个具体类,就是这种关系。 抽象耦合(Abstract Coupling)关系:这种关系发生在一个具体类和一个抽象类之间,这样就使必须发生关系的类之间保持最转载 2012-11-16 11:29:15 · 1142 阅读 · 0 评论