Java设计模式汇总

1、简介

设计模式.就我的而言.说白了就是让代码直接的耦合度没那么高.编程

这样系统的拓展性、伸缩性更强,毕竟功能的需求突飞猛进.每天改改改.设计模式

因此有一个良好的架构,在改需求时能够提升你的效率.架构

Jdk源码中io流就用到了装饰者模式.还有基于接口的动态代理模式invovation框架

Spring框架中也用了单例模式、代理模式ui

2、分类

共23种,分三大类spa

1.建立型(5种):把对象的实例化过程抽象出来,把对象的引用和建立过程抽离出来,达到松耦合的效果.net

    对对象建立过程的各类问题和解决方案的总结设计

    工厂模式、抽象工厂、单例模式、建造者模式、原型模式代理

2.结构型(7种):是针对软件设计结构的总结,关注于类、对象继承、组合方式的实践经验对象

    适配模式、桥接模式、装饰者模式、外观模式、组合模式、亨元模式

3.行为型(11种):是从类或对象之间交互、职责划分等角度总结的模式

    代理模式、观察者模式、策略模式、模板方法模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式

3、六大原则

1.开闭原则

    对拓展开放、修改关闭

2.里氏替换原则

    父类的引用指向子类的对象

3.控制反转原则

    针对接口编程,不依赖具体

4.接口隔离原则

    每一个接口各自的职责,必要时使用多个接口

5.迪米特法则

    一个实体尽可能少地与其余实体间发生相互做用.最好要有层级引用关系

6.合成复用原则

    尽可能使用组合/聚合的方式,而不是使用继承

4、模式传送门

    4.1建立型

        工厂模式(Factory):http://www.javashuo.com/article/p-djuuevzq-nx.html

        抽象工厂(Abstract):http://www.javashuo.com/article/p-mitsxbpm-nx.html

        单例模式(Single):http://www.javashuo.com/article/p-eaokhrqk-nx.html

        原型模式(Prototype):http://www.javashuo.com/article/p-elvbykae-nx.html

        建造者模式(Builder):http://www.javashuo.com/article/p-feufgvev-nx.html

    4.2结构型

        适配器(Adaptor):http://www.javashuo.com/article/p-ckfhcruf-nx.html  

        桥接模式(Bridge):http://www.javashuo.com/article/p-uznawaim-nx.html

        装饰者(Decorator):http://www.javashuo.com/article/p-wngtndji-nx.html

        外观模式(Facade):http://www.javashuo.com/article/p-zfmavemx-nx.html

        组合模式(Composite):http://www.javashuo.com/article/p-sscnhzbu-nx.html

        享元模式(FlyWeight):http://www.javashuo.com/article/p-hawtfuaf-nx.html

    4.3行为型

        代理模式(Proxy):http://www.javashuo.com/article/p-omiiqvcl-nx.html       

相关文章
相关标签/搜索