设计模式
记录点滴人生
这个作者很懒,什么都没留下…
展开
-
23种设计模式以及设计原则(一)
最近看了一本形象生动的关于设计模式的书,写下笔记,记录收获总结。设计原则:1.单一职责原则(SRP):就一个类而言,应该仅有一个引起他变化的原因。2.开放封闭原则:软件实体(类、模块、方法等)应该是可扩展的,但又不可修改。应该尽早的对长须中呈现出频发变化的那些部分做出抽象,开发工作不久就应尽快查明可能发生变化的地方,时间越长,调用的越多,正确的抽象就越困难,遵循这个原则原创 2014-01-22 13:43:58 · 913 阅读 · 0 评论 -
23种设计模式以及设计原则(二)
1.门面模式 门面模式说白了就是封装了一个类,而此类的作用是按顺序执行方法。调用者无需知道具体流程,只需要将要传递的参数传给该类,这样该类就按顺序执行就好了,符合高扩展性以及高内聚低耦合的原则。 例如写信,顺序是先写内容、写信封、把信放到信封里、最后邮递出去,而且顺序不能颠倒(如果你非要较真说我先写信封后写内容,那万一要是之前给前女友写的信封被现女友看到了呢?哎原创 2014-03-28 13:15:28 · 1096 阅读 · 0 评论 -
Java的回调函数和观察者模式的区别
前一段时间研究了一下设计模式,突然想到观察者模式和回调函数之间的联系,网上也没有什么人说清楚,便自己又仔细想了想,便有了如下观点,欢迎各位大神前来拍砖! 首先,先阐述一下网上说的,网上先说这是完全不同的两种东西,接口回调是观察者模式的实现,后者是一种设计模式。 然而,我更关注的是两者之间的联系,我便总结了一下网上前辈的观点。 我的观点是回调原创 2014-04-14 16:27:07 · 4200 阅读 · 0 评论 -
单例模式、双检测锁定DCL、volatile(转)
单例模式最要关心的则是对象创建的次数以及何时被创建。 Singleton模式可以是很简单的,它的全部只需要一个类就可以完成(看看这章可怜的UML图)。但是如果在“对象创建的次数以及何时被创建”这两点上较真起来,Singleton模式可以相当的复杂,比头五种模式加起来还复杂,譬如涉及到DCL双锁检测(double checked locking)的讨论、涉及到多个类加载器(ClassLoad转载 2016-11-03 11:07:21 · 294 阅读 · 0 评论