经典23种设计模式

六大设计原则:

单一原则:对于一个类或者接口来说,职责应该单一化。

里氏代换原则:子类必须拥有父类的全部能力,并且才可以在次基础上扩展。(里氏代换原则是对实现抽象化的具体步骤的规范)。

开放-封闭原则:程序的实体对象应该可以进行扩展,但不应该可以修改。开放-封闭原则的核心就是面向抽象编程。

依赖倒转原则:设计程序的时候,应该是实现依赖于抽象,而不是抽象依赖于实现。鼓励面向接口编程,让抽象使得各个类和模块实现彼此独立。

合成/聚合原则:尽量不使用继承,应尽量使用合成/聚合。其实就是接口和抽象类的区别,应该用“has-a”而不是用“is-a”,“is-a”会导致父类子类关系过于复杂。

迪米特法则:两个类直接不应该直接通信,如果要互相调用,应该使用一个中介类来转发这个调用。强调在类的结构设计上,应保护好自己的信息,因为信息隐蔽性越好,软件复用性越高。

 

创建型模式:

工厂方法模式:提供一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。

抽象工厂模式:提供一个创建一系列的对象的接口,而不需指定它们具体的类。(和建造者模式很像,抽象工厂模式注重了如何获取一个实例)。

单例模式:保证一个类仅有一个实例。

建造者模式:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。(注重了如何建造一个实例)。

原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。(典型的是clone方法,不用去实例化一个对象而直接创建,提升了性能和效率)。

 

未完待续……………………………………

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值