![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面向对象设计模式
56yangyuwei
这个作者很懒,什么都没留下…
展开
-
设计模式——简介
去年的时候在学校上课时,学习了设计模式,最近做开发的时候发现有些模式真的是很好用,对程序的维护特别方便。所以,今个开始,我打算重新再看一遍23种设计模式,然后和大家一起分享分享。 注:此篇文章参考自Java设计模式(耿祥义 张跃平 著,清华大学出版社.2013)。 一、首先,了解下什么是设计模式吧。我们知道,对于一套软件而言,设计者都会让它尽可能满足以下几个目标:1、正...原创 2016-02-24 22:24:04 · 122 阅读 · 0 评论 -
设计模式——工厂方法模式
在简介一文的最后,提到了一个简单工厂模式,但是它并不属于23种设计模式之一,可能是它太过于简单,又或者是它具有以下一些不足:在简单工厂模式中,只提供了一个工厂类,该工厂类处于对产品类进行实例化的中心位置,它知道每一个产品对象的创建细节,并决定何时实例化哪一个产品类。 简单工厂模式最大的缺点是当有新产品要加入到系统中时,必须修改工厂类,加入必要的处理逻辑,这违背了 “ 开闭原则” 。 在...原创 2016-02-26 20:02:53 · 281 阅读 · 0 评论 -
设计模式——抽象工厂模式
写在前面看了一下自己的博客,从15年开通(那时候大三)到现在(刚刚毕业)已经1年半了,大三开始就一直忙着各种比赛,靠熟人朋友接一些小项目,然后去年大四一年就来杭州实习,开发一个新的物流项目,然后从长沙到杭州,也遇到了很多老朋友,然后经常出去玩一玩就把博客放一边了,今天回过头来看,发现当年要写的面向对象设计模式的系列居然还一直没有更新,觉得深感惭愧,虽说这类型的在网上已经不少了,但总归来说对...原创 2017-08-24 11:00:03 · 402 阅读 · 0 评论 -
设计模式——建造者模式
前面三个都是比较简单的工厂模式,主要用于构造比较简单的对象。但无论是在现实世界中还是在软件系统中,都存在一些复杂的对象,它们拥有多个组成部分,如汽车,它包括车轮、方向盘、发送机等各种部件。而对于大多数用户而言,无须知道这些部件的装配细节,也几乎不会使用单独某个部件,而是使用一辆完整的汽车。这个时候,面对复杂的对象可以通过建造者模式对其进行设计与描述,建造者模式可以将部件和其组装过程分开,一步一...原创 2017-08-31 14:32:24 · 262 阅读 · 0 评论 -
设计模式——原型模式
在面向对象系统中,使用原型模式来复制一个对象自身,从而克隆出多个与原型对象一模一样的对象。因为在软件系统中,有些对象的创建过程较为复杂,而且有时候需要频繁创建,原型模式通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的办法创建出更多同类型的对象,这就是原型模式的意图所在。 一、原型模式动机我们来看一个例子——邮件。由于邮件对象包含的内容较多(如发送者、接收者、...原创 2017-10-31 18:04:14 · 409 阅读 · 0 评论 -
设计模式——单例模式
前面已经对工厂方法模式、抽象工厂模式、建造者模式、原型模式进行了介绍,今天要介绍的是设计模式的创建型模式的最后一个模式——单例模式。 一、单例模式动机顾名思义,就是某个类只有一个实例,这种场景其实在软件开发中屡见不鲜,因为对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只...原创 2017-12-01 15:32:25 · 235 阅读 · 0 评论