研磨设计模式-设计模式的基础-设计模式有什么
设计模式的组成
单个设计模式
设计模式的名称
为每个设计模式取名,好记易懂
环境问题
描述什么场景下,出现什么样的特定问题
解决方案
描述如何解决这个问题
效果
描述模式应用的效果,以及可能带来的问题,或者使用中需要权衡的问题
上面是对单个设计模式来说的,在java领域中,对于设计模式的组成还有另外一种分发,就是按照设计模式所在的技术领域来划分,
大致分成:
java设计模式-GoF的《设计模式——可复用面向对象软件的基础》
关注细节设计
javaee设计模式-SUN的《J2EE核心设计模式》
层级更高,注重架构设计,组合成架构
EJB设计模式
实时系统设计模式
多线程设计模式
架构模式
java设计模式的分类
创建型模式:抽象了对象实例化的过程,用来帮助创建对象实例
结构型模式:描述如何组合类和对象已获得更大的结构【类内的关系起来】
行为型模式:描述算法和对象间职责的分配【为了类内设计更合理】
设计模式和面向对象设计原则
原则从思想层面上给我们指出了面向对象分析设计的正确方向,我们应该在进行面向对象分析设计时尽量遵守这些准则
如果说原则是思想上的指导,那么模式就是实现手段。因此,设计模式也应该遵守这些元怎,换句话说,设计模式就是设计原则的一字儿具体体现
原则的具体实现不止设计模式一种。
一种设计模式,体现的设计原则往往不是单一的,而是几种原则融合在一起的
设计原则只是一种指导思想,事实上开发中很少完全遵守,设计是一种不断权衡的工作,有时候,我们还要考虑其他方面4
设计模式和UML
UML是面向对象分析与设计的一种标准
这两者其实没有关系
设计模式和设计工具
设计模式和重构
设计模式是重构的目标,重构是达到目标的手段之一
重构【辅助手段】不排斥提前设计,重构并不需要设计,不赞成过度设计,但是支持适度设计
合理的提前设计【主要手段】+重构来不断的改进设计=>趋近于优秀的系统
研磨设计模式-设计模式的基础-设计模式有什么相关推荐
- php注册树模式,php基础设计模式大全(注册树模式、工厂模式、单列模式)
废话不多说了,先给大家介绍注册树模式然后介绍工厂模式最后给大家介绍单列模式,本文写的很详细,一起来学习吧. php注册树模式 什么是注册树模式? 注册树模式当然也叫注册模式,注册器模式.之所以我在这里 ...
- 设计模式-UML关系基础
设计模式-UML关系基础 UML关系基础 类之间的关系 泛化 类在继承中表现为泛化和实现. 继承关系为is-a的关系,两个对象之间用is-a表示为继承关系. eg,自行车是车,猫是动物. 泛化关系用空 ...
- 二、设计模式-必要的基础知识—旅行前的准备 #和设计模式一起旅行#
必要的基础知识-旅行前的准备 工欲善其事,必先利其器.--<论语> 要开始一场旅行,准备的工作肯定不能少,不能太任性,一场说走就走的旅行,也需要基础条件的,那么本次就做做一些旅行之前的准备 ...
- python算法基础设计模式,python常见的设计模式
Python有设计模式么 Python设计模式主要分为三大类:创建型模式.结构型模式.行为型模式;三 大类中又被细分为23种设计模式,以下这几种是最常见的. 单例模式:是一种常用的软件设计模式,该模式 ...
- 设计模式学习1:设计模式简述和设计模式原则
设计模式简述 什么是设计模式? 软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案. 设计模式的目的: 代码高可用(相同作用的代码能重复 ...
- 精通python设计模式-浅谈Python设计模式 - 原型模式
声明,本系列文章主要参考<精通Python设计模式>一书,并且参考一些资料,结合自己的一些看法来总结而来. 在<精通Python设计模式>中把设计模式分为三种类型: 创建型模式 ...
- 《设计模式详解》设计模式概述、UML
<设计模式详解> 1.设计模式概述 1.1 软件设计模式的产生背景 1.2 软件设计模式的概念 1.3 学习设计模式的必要性 1.4 设计模式分类 2.UML 2.1 类图概述 2.2 类 ...
- 设计模式(一)设计模式的分类与区别
文章目录 一.设计模式的六大原则 1.1 开闭原则(总原则) 1.2 里氏替换原则 1.3 依赖倒置原则 1.4 单一职责原则 1.5 接口隔离原则 1.6 迪米特法则 1.7 合成复用原则 二.设计 ...
- 从零开始学习Java设计模式 | 设计模式入门篇:设计模式概述
在上一讲中,明确了设计模式这门课所要学习的内容之后,接下来,我们就得开始正式步入设计模式这门课的学习中了,当然,我也祝大家能在设计模式这门课程中能够学到很多东西,也不枉我这一片苦心了! 软件设计模式的 ...
- 大话php设计模式视频,大话PHP设计模式【1】 – 魔术师之路
PSR-0规范命名空间必须与绝对路径一致 类名首字母必须大写 除了入口文件外,其他'.php'文件必须只有一个类 PHP链式操作必须在每个function里return $this; 三种基础设计模式 ...
最新文章
- react取消所有请求_React Hooks中取消HTTP请求来避免内存泄漏
- SICP学习笔记(P27-P28)
- 力扣【每日温度】leetcode-739.每日温度:单调栈解法
- 计划策略-25-具有配置的订货型生产
- HDU4279(2012年天津网络赛---数论分析题)
- [长流支流]的专栏--《金质打印通》、《WebMIS.NET快速开发平台》,MIS/ERP开发利器...
- 如何在xp中添加打印机
- AI医疗智能问答算法赛,超二十万大奖等你来拿
- Windows2008r2如何关闭防火墙
- Python——format()/str.format()函数
- spring aop示例_具有AOP事务管理的Spring ORM示例
- Linux环境下NodeJS和MongoDB的安装配置
- HeadFirst设计模式之命令模式
- archlinux安装mysql_在Arch Linux中安装MySQL
- 阿里云云计算 13 OSS的优势和使用场景
- Vulkan-NCNN 编译
- Yii路由之LimeSurvey去掉烦人的/index.php/*
- matlab对信号加噪代码,Matlab给信号加噪声
- 计算机c盘能格式化吗,c盘可以直接格式化吗?C盘怎么格式化?
- pyqt创建透明窗体