摘要 最近在读GOF的Design Patterns: Elements of Reusable Object-Oriented Software(设计模式:可复用面向对象软件的基础),学习前辈们的经验来增加自己的编码设计能力。在学习的过程中,会把我从书上学到的知识以及自己的理解写到这里。一方面能够... ...
分类:
其他好文 时间:
2018-10-23 00:07:12
阅读次数:
221
一、单例模式概念在GOF的《设计模式:可复用面向对象软件的基础》中是这样说的:保证一个类只有一个实例,并提供一个访问它的全局访问点。1、为什么要使用单例模式1.在整个程序空间使用全局变量,共享资源;2.大规模系统中,为了性能的考虑,需要节省对象的创建时间等等;3.在多个线程之间,共享同一个资源或者操... ...
分类:
其他好文 时间:
2018-10-13 16:55:38
阅读次数:
260
设计模式(一)——设计模式概述中简单介绍了设计模式以及各种设计模式的基本概念,本文主要介绍单例设计模式。包括单例的概念、用途、实现方式、如何防止被序列化破坏等。 概念 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式。在 GOF 书 ...
分类:
其他好文 时间:
2018-10-09 15:36:23
阅读次数:
161
介绍 观察者模式是行为设计模式之一。当您对对象的状态感兴趣并希望在有任何更改时收到通知时,观察者设计模式非常有用。在观察者模式中,监视另一个对象状态的对象称为Observer,正在被监视的对象称为Subject。 根据GoF,观察者设计模式的意图是; 定义对象之间的一对多依赖关系,以便当一个对象更改 ...
分类:
编程语言 时间:
2018-10-06 00:56:14
阅读次数:
190
成为Java高手是每个Java学习者的梦想,但目前Java知识分支众多,我们该如何学习?本文介绍成为Java高手需要注意的25个学习目标,希望对正在成为Java高手的您有所帮助。 1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其 ...
分类:
编程语言 时间:
2018-10-04 08:49:41
阅读次数:
142
Java设计模式 介绍 GOF是Gang of four(四人帮)的简称,是由四位java业界的专家编写的针对特定场景下问题的专家级解决方案。大概包含23中设计模式,设计模式本身与技术没有太大关系,主要是设计思想的运用,比较著名的像单例模式、工厂模式等。本文不打算给出所有设计模式的说明,主要给出实际 ...
分类:
编程语言 时间:
2018-09-29 20:23:48
阅读次数:
193
1. GOF 迭代器设计模式 前面一篇文章有写到stl_list的实现,也实现了一下相应的iterator,但是后面觉得,实现具体容器之前有必要介绍一下iterator(迭代器) 。那么迭代器是什么呢? GOF的设计模式是这样定义的: 提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的 ...
分类:
其他好文 时间:
2018-09-26 01:19:35
阅读次数:
244
概要 最近在写代码的时候,遇到if else 特别多,还存在嵌套情况;这导致代码很长,看着很难受,一点面向对象的感觉都没了; 也使得代码耦合度非常高; 小编通过责任链模式来解决这问题; 责任链模式定义(Chain of Responsibility) 在 GOF 23 中是这么描述的 译:通过为多个 ...
分类:
其他好文 时间:
2018-09-21 19:51:07
阅读次数:
173
严格意义上来说,简单工厂模式并不属于GoF的23种设计模式,但是它是学习其他工厂模式的基础和前提条件。理解了简单工厂模式,学习工厂方法模式和抽象工厂模式会比较容易一些。 简单工厂模式的定义 定义一个工厂类,他可以根据不同的参数返回不同类的实例。通常情况下,被创建的类的实例通常都具有共同的父类。 简单 ...
分类:
编程语言 时间:
2018-09-19 23:32:48
阅读次数:
220
访问者模式 在GOF的《设计模式:可复用面向对象软件的基础》一书中对访问者模式是这样说的:表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。访问者模式把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由地演化。该模式的目的是 ...
分类:
编程语言 时间:
2018-09-05 19:53:08
阅读次数:
182