大话设计模式宏观总结——创建型&结构型&行为型
师傅验收项目的时候。问大话设计模式那三种类型的差别和联系是什么,顿时我傻了眼。由于除了知道这三种类型分别如何称呼以外。从来都没想过为什么这样划分?于是,我便回答:我没想过这个问题。若是从字面上来理解的话,创建型应该负责的框架,结构型负责的应该是内部结构吧~然后师傅没说对错。仅仅是说,无论自己是如何理解的。都要学会去验证~
然后,我非常自觉地开启了新的一篇博客总结之旅~
导图
创建型模式
结构型模式
行为型模式
分类总结
我们通常依据两条准则对模式进行分类,第一条准准则是目的,例如以下表所看到的:
创建型模式与对象的创建有关;结构型模式处理类或对象的组合,它採用继承机制来组合接口或实现(类结构型模式),或者通过组合一些对象,从而实现新的功能(对象结构型模式);行为型模式对类或对象如何交互和如何分配职责进行描写叙述。
第二是范围准则,指定模式主要是用于类还是用于对象。类模式处理类和子类之间的关系。这些关系通过继承建立,是静态的。在编译时刻便确定下来了。对象模式处理对象间的关系。这些关系在执行时刻是能够变化的,更具动态性。
从某种意义上来说。差点儿全部模式都使用继承机制,所以“类模式”仅仅指那些集中于处理类间关系的模式,而大部分模式都属于对象模式的范畴。
创建型类模式将对象的部分创建工作延迟到子类,而创建型对象模式则将它延迟到还有一个对象中。
结构型类模式使用继承机制来组合类。而结构型对象模式则描写叙述了对象的组装方式。
行为型类模式使用继承描写叙述算法和控制流。而行为型对象模式则描写叙述一组对象如何协作完毕单个对象所无法完毕的任务。
我的理解
创建型模式为其它两种模式使用提供了环境,好比VS软件提供了.net环境和操作平台,是各种编程语言能随心所欲地在这个平台上编译运行;
结构型模式側重于接口的使用(自我感觉)。它做的一切工作都是对象或是类之间的交互,提供一个门,成就一个你来我往。协同合作的地球村;
行为型模式顾名思义,側重于详细行为。所以概念中才会出现职责分配和算法通信等内容。
将三者结合起来成为故事。中美合作的故事——创建型模式提供国际环境。无战争。求发展;结构型模式为中美合作提供理由。即和平时代的互利共赢,行为型模式就详细到两个大国之间是怎样合作。比方经济合作、文化合作等~
大话设计模式宏观总结——创建型&结构型&行为型的更多相关文章
- (转)Java经典设计模式(2):七大结构型模式(附实例和详解)
原文出处: 小宝鸽 总体来说设计模式分为三大类:创建型模式.结构型模式和行为型模式. 博主的上一篇文章已经提到过创建型模式,此外该文章还有设计模式概况和设计模式的六大原则.设计模式的六大原则是设计模式 ...
- Java开发中的23种设计模式详解(2)结构型
我们接着讨论设计模式,上篇文章我讲完了5种创建型模式,这章开始,我将讲下7种结构型模式:适配器模式.装饰模式.代理模式.外观模式.桥接模式.组合模式.享元模式.其中对象的适配器模式是各种模式的起源,我 ...
- 设计模式(11)--Flyweight(享元模式)--结构型
作者QQ:1095737364 QQ群:123300273 欢迎加入! 1.模式定义: 享元模式是对象的结构模式.享元模式以共享的方式高效地支持大量的细粒度对象. 2.模式特点: 享元模 ...
- 设计模式06: Adapter 适配器模式(结构型模式)
Adapter 适配器模式(结构型模式) 适配(转换)的概念无处不在:电源转接头.电源适配器.水管转接头... 动机(Motivation)在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象 ...
- 设计模式09: Decorator 装饰模式(结构型模式)
Decorator 装饰模式(结构型模式) 子类复子类,子类何其多加入我们需要为游戏中开发一种坦克,除了不同型号的坦克外,我们还希望在不同场合中为其增加以下一种多种功能:比如红外线夜视功能,比如水路两 ...
- Java设计模式15:常用设计模式之享元模式(结构型模式)
1. Java之享元模式(Flyweight Pattern) (1)概述: 享元模式是对象池的一种实现,英文名为"Flyweight",代表轻量级的意思.享元模式用来 ...
- Java设计模式07:常用设计模式之装饰器模式(结构型模式)
1. Java之装饰器模式(Decorator Pattern) (1)概述: 装饰模式在Java种使用也很广泛,比如我们在重新定义按钮.对话框等时候,实际上已经在使用装饰模式了.在不必改变原 ...
- 设计模式(8)--Decorator--装饰器模式--结构型
1.模式定义: 装饰模式又名包装(Wrapper)模式.装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案. 2.模式特点: 装饰模式能够实现动态的为对象添加功能,是从一个对象 ...
- 设计模式--享元模式Flyweight(结构型)
一.享元模式 在一个系统中如果有多个相同的对象,这些对象有部分状态是可以共享的,我们运用共享技术就能有效地支持大量细粒度的对象. 二.例子 举个围棋的例子,围棋的棋盘共有361格,即可放361个棋子. ...
随机推荐
- 329.-io流(字符-练习-复制文本文件二)
//每次读取的字节长度,一般都是1024的倍数 private static final int BUF_SIZE = 1024; public static void main(String[] a ...
- solr 6.5.1 linux 环境安装
前言 最近在研究搜索引擎,准备搭建一套属于自己的搜索APP,用于搜索的数据我已通过scrapy抓到本地了,现在需要一个搜索引擎来跑这些数据.于是选择了基于Lucene的solr来为我做搜索引擎的工作. ...
- 牛客多校Round 1
Solved:1 rank:249 E. Removal dp i,j表示前i个数删除了j个且选择了第i个的答案 类似字符串的dp 预处理一下nex i_k即i后面k第一次出现的位置 就好转移了 # ...
- ViewPager与fragment详解链接
http://blog.csdn.net/harvic880925/article/details/38453725, http://blog.csdn.net/mwj_88/article/deta ...
- LeetCode_18 4Sum
Given an array nums of n integers and an integer target, are there elements a, b, c, and d in nums s ...
- 通过HTTP的HEADER完成各种骚操作
作为一名专业的切图工程师,我从来不care网页的header,最多关心Status Code是不是200.但是HEADER真的很重要啊,客户端从服务器端获取内容,首先就是通过HEADER进行各种沟通! ...
- typora_test
加粗标题 加下标线 <!--aba--> #Include  ![](http://gyz.g ...
- Python使用Flask框架,结合Highchart处理xml数据
1.html代码 <!DOCTYPE html><html lang="en"><head> <meta charset=" ...
- Discuz 部署,500 – 内部服务器错误。 您查找的资源存在问题,因而无法显示。
Windows7 IIS 500 – 内部服务器错误解决方案 1.解决方法:打开IIS,在功能视图中找到“错误页”,双击进去后,看最右边的“操作”下的“编辑功能设置…”,将“错误响应”下的“详细错误” ...
- 解决Web部署 woff字体 404错误
问题:刚刚在IIS上部署web项目的时候,发现浏览器总是报找不到woff字体的错误.导致浏览器加载字体报404错误. 原因:因为服务器IIS不认WOFF这个文件类型,只要在IIS上添加MIME 类型即 ...