修饰模式,是面向对象编程领域中,一种动态地往一个类中添加新的行为的设计模式。就功能而言,修饰模式相比生成子类更为灵活,这样可以给某个对象而不是整个类添加一些功能。例如:DataOutputStream
dos = new DataOutputStream(new BufferedOutputStre...
分类:
其他好文 时间:
2014-05-17 21:01:13
阅读次数:
287
id 被成为万能指针,也就是可以指向任何对象.NSObject *
本身就是定义指向NSObject类型的指针.那么这两者有什么区别吗?这两者都是既可以作为返回值,又可以作为变量修饰.而其主要区别则在于id修饰的变量不遵循协议.这在实现代理模式中会体现出其区别,例如在调用代理方法时会先判断该代理是否...
分类:
其他好文 时间:
2014-05-17 20:48:15
阅读次数:
253
见名知义,所谓"懒加载"就是指"在使用它的时候才会被加载",这是在OC中最为常见模式,因为在OC中UI视图就是采用懒加载的方式,这样做的好处是不必一开始就将所有的数据加载到内存,占用内存资源.可以在使用到的时候再加载对应数据.
其实现也比较简单.例如,如果在UITableView中加载数据da...
分类:
其他好文 时间:
2014-05-17 20:45:46
阅读次数:
217
网上有很多关于IOS开发的学习资料.然而却很少有关于设计一个项目时,如何设计其目录结构?这对于自学IOS的程序猿们,无疑有诸多不利.接下来,我就简单的谈下真正在公司中,项目的目录结构如何搭建:以上为第一种,先按照功能模块进行划分,然后遵循MVC设计模式,分别设置model,view,control子...
分类:
移动开发 时间:
2014-05-17 20:28:44
阅读次数:
341
最近在做个项目,用到了MVVM模式。发现在用DelegateCommand时,用到了CanExecute,不能实时更新,查了很多资料都没有这方面的。经过仔细研究prism源码,发现以下解决方案:下面是界面,很简单,一个textbox,一个button。实现的功能是按下button时,显示textbo...
分类:
其他好文 时间:
2014-05-17 20:28:08
阅读次数:
355
隐马尔可夫模型HMM与维特比Veterbi算法(一)主要内容:1、一个简单的例子2、生成模式(Generating Patterns)3、隐藏模式(Hidden
Patterns)4、隐马尔可夫模型(Hidden Markov Model)一、一个简单的例子 考虑一个简单的例子,有人试图通过一片海藻...
分类:
其他好文 时间:
2014-05-17 20:05:13
阅读次数:
1076
时间过得真快啊,不知不觉又要周末了,借这个周末时间。把《浅谈设计模式的学习(下)》补上吧。
在《浅谈设计模式的学习(中)》中,说到了保持抽象的思维。接下来说一下第四点,做一个分享,也记录一下自己的学习历程。4、学习设计模式,就不要把它看的太认真
设计模式是一个编程思想,它不是具体的代码套路。举...
分类:
其他好文 时间:
2014-05-17 18:43:40
阅读次数:
275
首先,设计模式只是一个种思想,从实际开发中,考虑各种情况,而慢慢积累优化出来的设计模型。在谈装饰者模式:在编码的过程,把具体的问题抽象成现实生活中的情景,往往很让人理解,后续维护也很简单。在这里我们就要抽象一个“装饰者”和一个“被装饰者”这个两个对象是装饰模式中不可缺少的。装饰模式还有一个原则,被装...
分类:
其他好文 时间:
2014-05-17 18:34:14
阅读次数:
270
/** * 事件接口 即被观察者 * * @author Host * */ public
interface Event { void attach(Listener listener); void detach(Listener
listener); void notifyListener();...
分类:
其他好文 时间:
2014-05-17 18:33:38
阅读次数:
423
有时候数据库在占用时,想做一些操作,无法操作。可以尝试将数据库切换为单用户模式来操作。操作完之后再切换回多用户模式。命令如下:alter database
数据库名 set Single_user --单用户alter database 数据库名 set multi_user --多用户或者sp_....
分类:
数据库 时间:
2014-05-17 18:27:33
阅读次数:
645