设计模式三大分类——创建模式、结构模式、行为模式
设计模式可以分为创建型、结构型、和行为型模式。
创建型模式对类的实现化过程进行了抽象,能够使软件模块做到与对象的创建和组织无关。
结构型模式描述类和对象之间如何进行有效的组织,以形成良好的软件体系结构,主要的方式是使用继承关系来组织各个类,一个最容易的例子就是如何用多个继承组织两个以上的类,结果产生的类结合了父类所有的属性,结构型模式特别适用于和独立的类库一起工作。
行为型设计模式描述类和对象之间如何交互及如何分配职责,实际上它所牵涉的不仅仅是类或对象的设计模式,还有它们之间的通信模式。
创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。
结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。
行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式(责任链模式)、访问者模式。
设计模式三大分类——创建模式、结构模式、行为模式相关推荐
- 每天学习一个设计模式(八):创建型之抽象工厂模式
目录 一.基本概念 二.通俗解释 三.应用场景 1.使用简单工厂模式的解决方案 2.抽象工厂模式 抽象工厂模式结构 在什么情况下应当使用抽象工厂模式 抽象工厂模式的起源 四.抽象工厂模式的优缺点 抽象 ...
- 【深入设计模式】责任链模式—责任链模式及责任链模式在源码中的应用
文章目录 1. 责任链模式 1.1 责任链模式简介 1.2 责任链模式结构 1.3 责任链模式示例 2. 责任链模式在源码中的应用 2.1 Servlet 中的责任链模式 2.2 Spring 中的责 ...
- 数据库系统概论-第一章绪论【概念模型、层次模型和三级模式(外模式、模式、内模式)】
1,数据系统概述 数据库的四个基本概念: 数据.数据库.数据库管理系统.数据库系统: 1 数据: 描述事物的符号记录称为数据 2 数据库是长期存储在计算机内.有组织.可共享的大量数据的集合. 3 数据 ...
- 设计模式 创建模式 结构模式和行为模式
创建型模式关注对象的创建 结构型模式关注类或对象之间的组织关系 行为型模式关注类或对象间的交互和职责分配(就是用来干什么) 模式从本质上都是简化和分解类或对象,使易于扩展或封装性更好:一些相似的模式的 ...
- 初探Java设计模式1:创建型模式(工厂,单例等)
Java 设计模式 一直想写一篇介绍设计模式的文章,让读者可以很快看完,而且一看就懂,看懂就会用,同时不会将各个模式搞混.自认为本文还是写得不错的,花了不少心思来写这文章和做图,力求让读者真的能看着简 ...
- 创建型模式、结构型模式和行为型模式_设计模式之创建型模式
设计模式GOF23(Group of Four) 设计模式可分为三种类型: 创建型模式:单例模式,工厂模式,抽象工厂模式,建造者模式,原型模式. 结构型模式:适配器模式,桥接模式,装饰模式,组合模式, ...
- 设计模式(23):创建型-原型模式(Prototype)
设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于 ...
- 设计模式(20):创建型-抽象工厂模式(Abstract Factory)
设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于 ...
- java设计模式中不属于创建型模式_23种设计模式第二篇:java工厂模式定义:工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式...
23种设计模式第二篇:java工厂模式 定义: 工厂模式是 Java 中最常用的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 工厂模式主要是为创建对象提供过渡接口, ...
最新文章
- 图神经网络GNN预训练技术进展概述
- 27、HTML框架(同一个浏览器窗口中显示不止一个页面)
- 【Python】创建长度为n的全0列表和全1列表
- uva 1623——Enter The Dragon
- java 变量锁_并发编程高频面试题:可重入锁+线程池+内存模型等(含答案)
- python龙卷风框架_WEB框架之Tornado
- USB Still Image Capture设备类
- App提交审核被拒的原因汇总
- CHD+CM-2 初始化集群和安装软件
- 程序员如何选择未来的职业路线
- 逆向爬虫14 Mongo入门
- hbuilder前端需要的插件_这两款HTML5开发工具,前端开发工程师用了直呼内行
- JS创建对象和事件绑定
- 微信公众号课程预约系统的功能需求分析
- 程序员必备技术类微信公众号
- 适合BS模式项目的录入页面
- Freeswitch 添加可转码的G729编码
- 【WP7】关于磁贴的使用
- 昨天,阿里用“平头哥”死磕起了中国芯!
- IDEA+Java+SSH+Bootstrap+Mysql实现在线考试系统(含论文)
热门文章
- unity游戏开发日志(一)将mmd模型导入unity,并解决材质丢失的问题
- 关于仕族_仕族信息_服务中心_仕族服务_男装:衬衫、法式衬衫、袖扣领带、西服西裤等男士正装服饰-仕族官网...
- 为了延长计算机寿命 使用计算机时最好,为了延长机器寿命、使用计算机时最好...
- java开发什么程序_java可以开发哪些软件
- Premiere Pro文件的压缩类型不受支持的解决办法
- 第三十一章 Unity骨骼动画
- fastapi基本使用之:入参,返回值与异常处理
- Block Corrupt
- git 出现 error: bad signature fatal: index file corrupt
- Kafka-Confluent平台