文章 2022-02-16 来自:开发者社区

设计模式学习--面向对象的5条设计原则之Liskov替换原则--LSP

一、LSP简介(LSP--Liskov Substitution Principle): 定义:如果对于类型S的每一个对象o1,都有一个类型T的对象o2,使对于任意用类型T定义的程序P,将o2替换为o1,P的行为保持不变,则称S为T的一个子类型。 子类型必须能够替换它的基类型。LSP又称里氏替换原则。 对于这个原则,通俗一些的理解就是,父类的方法都要在子类中实现或者重写。   二、举例说...

文章 2013-08-21 来自:开发者社区

设计模式学习--面向对象的5条设计原则之接口隔离原则--ISP

一、ISP简介(ISP--Interface Segregation Principle): 使用多个专门的接口比使用单一的总接口要好。一个类对另外一个类的依赖性应当是建立在最小的接口上的。一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,这是对角色和接口的污染。   “不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的...

文章 2013-08-18 来自:开发者社区

设计模式学习--面向对象的5条设计原则之依赖倒置原则--DIP

一、DIP简介(DIP--Dependency Inversion Principle): 1、高层模块不应该依赖于低层模块,二者都应该依赖于抽象。2、抽象不应该依赖于细节,细节应该依赖于抽象。   高层模块包含了一个应该程序中的重要的策略选择和业务模型,正是这些高层模块才使得其所有的应用程序区别于其他,如果高层依赖于低层,那么对低层模块的改动就会直接影响到高层模块,从而迫使它...

文章 2013-08-18 来自:开发者社区

设计模式学习--面向对象的5条设计原则之开放封闭原则--OCP

一、OCP简介(OCP--Open-Closed Principle):Software entities(classes,modules,functions,etc.) should be open for extension, but closed for modification。软件实体应当对扩展开放,对修改关闭,即软件实体应当在不修改(在.Net当中可能通过代理模式来达到这个目的)的前....

文章 2013-08-18 来自:开发者社区

设计模式学习--面向对象的5条设计原则之单一职责原则--SRP

  一、SRP简介(SRP--Single-Responsibility Principle): 就一个类而言,应该只专注于做一件事和仅有一个引起它变化的原因。   所谓职责,我们可以理解他为功能,就是设计的这个类功能应该只有一个,而不是两个或更多。也可以理解为引用变化的原因,当你发现有两个变化会要求我们修改这个类,那么你就要考虑撤分这个类了。因为职责是变化的一个轴线,当需求变...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。