写完了前面两篇,接下来,写一下《研磨设计模式》里面独特的地方。 对于前面的单例设计模式的实现,可以分为两类:懒汉模式(代码中的,1,3,4),跟饿汉模式(代码中的2)。 懒汉:顾名思义,就是什么事都不提前做,等到紧要关头才做。 以 4为例: (4)且看如下代码: public
前面,我们介绍了两个实现单例模式的方法,但对于前一种,如何在多线程环境下,安全实现单例模式呢? 当说到多线程,我们不难想到java语言里提供的同步关键字:synchronized (3)且看代码如下: public class Singleton { public static Singleton single = null; //--
先声明,我只是做个笔记,通过看《研磨设计模式》一书中的“单例模式”,而自己再复述一遍: 单例:实际上就是使某类,在全局上,只有一个实例,只允许提供给外界一个全局的访问点。而本质上,单例模式,就是控制类的实例的数目。当遇到要使某类有固定数目的实例时,这便是多例模式,而实现原理,则跟单例差不多,不过是多了一个变量,来控制数目,多了一个集合
五,倒置依赖原则与里氏代换原则:待续
四 迪米特法则:当一个类与另一个类进行交互时,就使用第三个类来传递这两个类之间的消息。 为什么这样,为了降低软件耦合度的问题。
三,组合/聚合原则:即在开发一个软件过程中,应尽量多使用组合/聚合原则。组合,聚合的定义我也忘了,但它们的区别,你可以想像一下一只雁的翅膀与雁的关系便是组合关系,局部的生命周期一定不能长于整体的,或局部的生命周期由整体管理,这样便是组合;而一只雁与雁群便是聚合关系,个体的生命周期与集体无关。 为什么使用这个原则呢?相对于继承,组合、聚合是一种低侵入式的依赖关系,而继承,则子类拥有所有父类prot
二,开——闭原则:即对继承开放,对修改关闭。为什么呢?这主要是为了让你的类易维护,可重用,也就是软件开发中的要求之一:可维护,可重用。可以想一下,你写了一个类,时不时,就往这个类中增加代码,增加功能,有时不小心删除了一些其他的代码,当其它类对这个类进行了引用,那么,就存在错误。而频繁对一个类的更改,将会增大出错的概率。这也是开——闭原则的由来。 一
最近看了本《大话设计模式》,相信很多人都有看过。里面以形象,生动的例子向读者介绍软件开发过程中的六大原则跟23种设计模式,呵,听起来有点像广告推广的样子。 先说一下那六大原则吧: 一,类单一职责原则:不难理解,即一个类,应该尽量简单,功能单一,但注意,这里的单一并不是说只实现一个行为。相对于业务逻辑与界面显示(例如,简单的加减运算功能,及简单的按钮显示),这属于两个层次或两个类别,就不应该把这
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号