但凡成为大家公认的模式,都是有一些不可小觑的威力,今天分享一个简单的设计模式:单例模式。 单例模式用于一些只希望有一个实例的类或者只希望执行一次的操作:校长只能有一个、老板只能有一个、用户点击弹窗只希望弹出一次。用全局变量等方式也可以实现,但是多了很多判断和处理代码,并且职责模糊,类的唯一实例化是....
分类:
编程语言 时间:
2014-05-08 13:41:35
阅读次数:
351
实现要点:1.组合模式采用树形结构来实现普遍存在的对象容器,从而将“一对多”的关系转化“一对一”的关系,使得客户代码可以一致地处理对象和对象容器,无需关心处理的是单个的对象,还是组合的对象容器。2.将“客户代码与复杂的对象容器结构”解耦是组合模式的核心思想,解耦之后,客户代码将与纯粹的抽象接口——而...
分类:
其他好文 时间:
2014-05-08 13:03:35
阅读次数:
355
CoreAnimation编程指南(九)图层布局发布日期:2012-11-21
浏览次数:7NSView提供了经典的“stuts and
springs”模式,用于视图调整大小的时候把关联到它父图层的视图重新调整位置。图层支持该模式,而且Mac OS
X上面的核心动画提供了一个更通用的布局管理器机制...
分类:
其他好文 时间:
2014-05-08 12:49:58
阅读次数:
1266
命令模式是一种原理非常简单,但是使用起来非常优雅、方便的并且个人觉得很有艺术感的设计模式。一、介绍还是先来看一下《研磨设计模式》的定义——将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。命令模式的本质——封装请求。封装请求是什么意思呢...
分类:
其他好文 时间:
2014-05-08 12:29:34
阅读次数:
338
发生折叠需要是相邻的非浮动元素;折叠发生在垂直外边距上,即margin-top/margin-bottom;折叠后取其中最大的那个margin值作为最终值;浮动元素不折叠。在水平书写模式下,发生margin折叠的是垂直方向,即margin-top/margin-bottom,在垂直书写模式下,mar...
分类:
其他好文 时间:
2014-05-08 12:28:04
阅读次数:
302
在java字符串方法中有一个非常好用的方法split(),该方法可以把字符串直接分割为数组此方法有两个重载。
一是:split(regex),参数为要分隔的字符串或者正则表达式。
二是:ss.split(regex, limit)。此方法可以的第二个参数一般不太常用,
这两个方法api给的解释是:limit 参数控制模式应用的次数,因此影响所得数组的长度。如果该限制 n 大于
0,则模式...
分类:
编程语言 时间:
2014-05-08 00:11:49
阅读次数:
417
最近开工了机房收费系统重构版,确实是有点纠结。
因为这一次是完全应用面向对象的思想设计程序。虽然之前学习了很多次面向对象编程,但是到实际应用的时候,还是会感到无从下手。纠结也没用,因为生活还在继续。。
机房收费系统,先从UML建模开始说起,刚刚画完包图和用例图,现在在头疼类图,说到类图,那真是无所适从,怎么抽象出类?添加什么属性?应该有什么方法?
类直接又改怎么联系?等等肯定不能像第一次画图...
分类:
其他好文 时间:
2014-05-08 00:06:49
阅读次数:
369
利用OTP行为包构建的应用之所以可靠,是因为我们按照OTP的设计模式,将所有进程组织成了一棵可靠的supervisor tree。每一个supervisor监控其子进程,并在其子进程出错时按照重启策略进行相应的处理。
但是,你是否考虑过,如果supervisor意外终止,其子进程会怎样?当然,直觉告诉我们连监控进程的没有了,所有的子进程应全部终止。但是,你在代码中是否真正考虑过这种情况?你的...
分类:
其他好文 时间:
2014-05-07 21:52:20
阅读次数:
350
设计模式就如同搭积木,这几种关系就如同积木,设计模式的作用无非就是为了将这几种关系组合,最大化降低程序耦合度,使代码结构达到最优,便于应对以后的需求变更。...
分类:
其他好文 时间:
2014-05-07 21:50:58
阅读次数:
576
原文地址:http://blog.csdn.net/hguisu/article/details/75582491.概述
在软件开发中也常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能。如查找、排序等,一种常用的方法是硬编码...
分类:
其他好文 时间:
2014-05-07 21:09:27
阅读次数:
422