一起来看Java设计思想之23种设计模式
怎么使用设计模式
为什么要使用设计模式?
编写代码,写接口、写类、写方法
用设计模式做设计的作用是什么?
指导、规定如何去写代码,如何写接口、写类、写方法
为什么要用设计模式?
需求会变,代码会变,为了应对变化,为了以后方便拓展,做到以不变应万变,不变的是变化
如何着手使用设计模式?
1:理清现实
2:区分变与不变
3:搞清楚会如何变
4:使用者如何隔绝这种变化
不同的变化方式对应不同的设计模式

设计的体现:
如何来定义接口、类、方法
怎么着手使用:
找出变化,分开变化和不变的
隔离、封装变化的部分,让其他部分不受它的影响
23种设计模式
创建型模式
这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用new运算符直接实例化对象,这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活
结构型模式
这些设计模式关注类和对象的组合,继承的概念被用来组合接口和定义组合对象获得新功能的方式
- 指方画圆之Java设计模式:适配器模式
- 八戒转世投胎竟然是Java设计模式:桥接模式
- 老和尚给小和尚讲故事引发了Java设计模式:组合模式
- 由孙悟空的七十二变看Java设计模式:装饰者模式
- 由一名保安引发的Java设计模式:外观模式
- 由奶茶店突发奇想开始了Java设计模式:享元模式
- Tony老师带你来看Java设计模式:代理模式
行为型模式
这些设计模式特别关注对象之间的通信
- 击鼓传花联想到了Java设计模式:责任链模式
- 玉帝传美猴王上天,大闹天宫之Java设计模式:命令模式
- 从中国加入WTO来看Java设计模式:中介者模式
- 观世音甘泉活树的故事竟然是Java设计模式:备忘录模式
- 什么?女神发了朋友圈,快来围观之Java设计模式:观察者模式
- 曾侯乙编钟引发的遐想之Java设计模式:状态模式
- 诸葛亮的锦囊妙计竟然是大名鼎鼎的Java设计模式:策略模式
- 从西天取经的九九八十一难来看Java设计模式:模板方法模式
- 由电脑专卖系统引发的Java设计模式:访问者模式
- 简单的介绍一下Java设计模式:解释器模式
- 简单的了解下Java设计模式:迭代器模式(转载)
- 被遗忘的设计模式——空对象模式(转载)
总结
请记住一下三点:
- 找出变化
- 接口
- 组合
- 一个
- 多个
- 组合
一起来看Java设计思想之23种设计模式的更多相关文章
- [ 转载 ] Java开发中的23种设计模式详解(转)
Java开发中的23种设计模式详解(转) 设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类 ...
- Java开发中的23种设计模式详解
[放弃了原文访问者模式的Demo,自己写了一个新使用场景的Demo,加上了自己的理解] [源码地址:https://github.com/leon66666/DesignPattern] 一.设计模式 ...
- Java开发中的23种设计模式详解(转)
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- Java开发中的23种设计模式(转)
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- 0. Java开发中的23种设计模式详解(转)
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- (转)Java开发中的23种设计模式详解
原文出自:http://blog.csdn.net/zhangerqing 一.设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型 ...
- Java开发中的23种设计模式
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- [转载]java开发中的23种设计模式
原文链接:http://blog.csdn.net/zhangerqing 设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反 ...
- 【java】java开发中的23种设计模式详解
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
随机推荐
- React组件复用的方式
React组件复用的方式 现前端的工程化越发重要,虽然使用Ctrl+C与Ctrl+V同样能够完成需求,但是一旦面临修改那就是一项庞大的任务,于是减少代码的拷贝,增加封装复用能力,实现可维护.可复用的代 ...
- CentOS部署TOMCAT8
官网下载地址:https://tomcat.apache.org/download-80.cgi 版本:TOMCAT 8 -- Core--tar.gz 首先需要将文件传输到CentOS的/usr/s ...
- 死磕以太坊源码分析之EVM动态数据类型
死磕以太坊源码分析之EVM动态数据类型 配合以下代码进行阅读:https://github.com/blockchainGuide/ 写文不易,给个小关注,有什么问题可以指出,便于大家交流学习. So ...
- 深入剖析 ConcurrentHashMap
自建博客地址:https://bytelife.net,欢迎访问! 本文为博客自动同步文章,为了更好的阅读体验,建议您移步至我的博客 本文作者: Jeffrey 本文链接: https://bytel ...
- 搭建SSH框架
以下为链接地址:https://www.2cto.com/kf/201606/518341.html
- 微信小程序:数组拼接
一开始用concat进行拼接,总是不行,代码如下: handleItemChange(e){ console.log(e) var itemList = e.detail.value itemList ...
- eclipse快速定位当前类所在位置
如何快速的找到一个类并且定位它所在的位置呢?这里以搜索Menu类为例说明. 可以通过CTRL + SHIFT +R的组合键,输入Menu 双击Menu.java即可跳转到对应的类上,但此时还不知道此类 ...
- WPF -- 一种添加静态资源的方式
本文介绍使用独立的xaml文件添加静态资源的方式. 步骤 创建XAML文件,如ImageButton.xaml,添加ResourceDictionary标签,并添加静态资源: 在App.xaml的Ap ...
- Python3.x 基础练习题100例(01-10)
练习01: 题目: 有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 分析: 可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. ...
- LeetCode1576. 替换所有的问号
原题链接 1 class Solution { 2 public: 3 string modifyString(string s) { 4 int lens = s.length(); 5 for(i ...