易学设计模式看书笔记(1) - 设计模式的分类

1 创建型模式

单独对对象的创建进行研究,高效的创建对象就是创建型模式讨论的问题。创建型设计模式有6种:

简单工厂模式(simple factory);

工厂方法模式(factory method);

抽象工厂模式(abstract factory);

创建者模式(Builder);

原型模式(Prototype);

单例模式(Singleton)。

2 结构型模式

在解决了对象的创建问题之后,对象的组成以及对象之间的依赖关系就成了关注的焦点,因为如何设计对象之间的结构、继承和依赖关系会影响到后续程序的维护性、代码的健壮性、耦合性。7种。

外观模式(Facade)

适配器模式(Adapter)

代理模式(Proxy)

装饰模式(Decorator)

桥模式(Bridge)

组合模式(Composite)

享元模式(Flyweight)

3 行为型模式

在对象的结构和对象的创建问题得到解决后,就剩下对象的行为了,如果对象的行为设计的好,那么对象的行为就会非常清晰,她们的协作就会非常高效。有11中行为型模式。

模板方法模式(Template Method)

观察者模式(Observer)

状态模式(State)

策略模式(Strategy)

职责链模式(Chain of Responsibility)

命令模式(Command)

访问者模式(Vistitor)

调停者模式(Mediator)

备忘录模式(Memento)

迭代器模式(Iterator)

解释器模式(Interpreter)

易学设计模式看书笔记(1) - 设计模式的分类

时间: 2024-10-12 16:02:54

易学设计模式看书笔记(1) - 设计模式的分类的相关文章

易学设计模式看书笔记(2) - 简单工厂模式

本文摘自易学设计模式一书 一.简单工厂模式 1.动物管理系统的例子 public interface Animal{ public void eat(); } public class Tiger implements Animal { public void eat(){ sysout.out.println("老虎会吃"); }; public void run(){ sysout.out.println("老虎会跑"); }; } public class D

易学设计模式看书笔记(4) - 抽象工厂模式

 本文内容来自书上,不懂设计模式,只求混个眼熟. 三.抽象工厂模式 1.动物管理系统的例子 public interface Animal{ public void eat(); } public class Tiger implements Animal { public void eat(){ sysout.out.println("老虎会吃"); }; public void run(){ sysout.out.println("老虎会跑"); }; } pu

易学设计模式看书笔记(7) - 代理模式

代理模式 1.系统日志记录的例子:给系统中的业务逻辑加上日志 (1):最简单直接的做法 public class Test { private Logger logger = Loger.getLogger(this.getClass().getName()); public void doLgic(String name){ logger.log(name + "开始业务逻辑处理..."); //业务逻辑处理相关程序 System.out.println("业务逻辑处理相关

易学设计模式看书笔记(3) - 工厂方法模式

二.工厂方法模式 1.动物管理系统的例子 首先,抽象的动物类和具体的动物实现类: public interface Animal{ public void eat(); } public class Tiger implements Animal { public void eat(){ sysout.out.println("老虎会吃"); }; public void run(){ sysout.out.println("老虎会跑"); }; } public

设计模式看书笔记(5) - 三种工厂模式比较

先看三种工厂模式部分主要代码(完整代码在前三篇博客): 简单工厂模式: public class SampleFactory { public static Animal createAnimal(String animalName){ if("Tiger".equals(animalName))){ return new Triger(); }else if("Dolphin".equals(animalName)){ return new Dolphin();

易学设计模式看书笔记(6) - 创建者模式

四.创建者模式 1.摩托车组装系统 觉得这些例子挺适合入门的,容易理解, 看了之后大概是个什么样子的就有了印象. 摩托车 = 车架 + 车轮 + 轮胎 + 发动机. 首先设计摩托车类以及各零件类: 摩托车类: public interface Motorcycle { void build(); } public class Motorcycle1 implements Motorcycle { void build(){ Sysout.out.println("组装摩托车开始..."

《c语言从入门到精通》看书笔记——第3章 数据类型

1.编程规范 (1)代码缩进:统一为4字符,用Tab (2)变量常量命名规范:常量命名统一为大写格式.如果成员变量,均以m_开始.普通变量,取与实际意义相关的名称,要在前面添加类型的首字母,并且名称的首字母要大写.如果是指针,则为其标识符全添加p字符,并且名称首字母要大写. (3)函数的命名规范:函数的首字母要大写 (4)注释 2.C语言有32个关键字,关键字不允许作为标识符出现在程序中 auto 局部变量(自动储存) break无条件退出程序最内层循环 case   switch语句中选择项

《c语言从入门到精通》看书笔记——第1章 C语言的概述

1.使用普遍的高级语言有:Fortran/ALGOL/Basic/COBOL/LISP/Pascal/PRLOLG/C/C++/VC/VB/Delphi/Java等 2. C语言是一个面向过程的语言,同时具有高级语言和汇编语言的有点 3 .C语言的特点:高效性/灵活性/功能丰富/表达力强/移植性好 4.include称为文件包含命令,后面尖括号中的内容称为头部文件或首文件 5. main函数的声明 Int main() 这里是声明main函数为一个返回值,是整形函数.在函数中这一部分称为函数头部

数据结构看书笔记(四)--栈与队列

栈与队列 栈是限定尽在表尾进行插入和删除操作的线性表  队列是只允许在一端进行插入操作.而在另一端进行删除操作的线性表栈的定义: 栈(Stack)是限定仅在表尾进行插入和删除操作的线性表 其中允许插入的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈.栈又称为先进后出(Last In First Out)的线性表,简称为LIFO结构. 特殊之处在与限制了这个线性表的插入和删除位置只能是在栈顶.  栈的插入操作,叫做进栈,也称为压栈.入栈. 栈的删除操作,叫做出