
设计模式
qjpcpu
这个作者很懒,什么都没留下…
展开
-
Observer观察者模式(来自《设计模式》一书)
最近在读《设计模式》这本书,细细嚼来觉得对以前见过的代码有了不同的感觉,今天对观察者模式进行一点说明,主要希望把我自己给将明白。结构:参与者:Subject 目标:目标知道它的观察者,可以有任意多个观察者观察同一个目标。提供注册和删除观察者对象的接口。Observer 观察者:为那些在目标放生改变时需要获得通知的对象定义一个更新接口。ConcreteSubj翻译 2012-03-27 11:52:50 · 641 阅读 · 0 评论 -
什么是尾部递归
维基百科:http://zh.wikipedia.org/wiki/%E5%B0%BE%E9%83%A8%E9%80%92%E5%BD%92精通递归程序设计:http://www.ibm.com/developerworks/cn/linux/l-recurs.html#N104DE尾部递归的示例:http://zh.wikipedia.org/wiki/%E7%BA%A2%E9%BB%9转载 2012-10-14 16:26:16 · 1027 阅读 · 0 评论 -
设计模式:Inversion of Control (Dependency Inversion)
以下文字来源于《从java走向javaee》。 在模块设计时,高层的抽象模块通常是与业务相关的模块,它应该具有重用性,而不依赖于低层的模块,例如如果低层模块原先是磁盘存取模式,而高层模块是个存档备份的需求,如果高层模块直接调用低层模块的方法,则就对低层模块产生了依赖关系。 例如下面这段代码://...void save(){ //... save转载 2013-03-18 11:55:47 · 889 阅读 · 0 评论 -
书写正确的代码
写下这个标题的时候我就在想,正确的代码?能够按要求正确地运行,不就是正确的代码吗,如果这些代码还具有较高的性能,那么甚至还能被称作非常正确。其实这是不准确的,如果代码是方便面,吃完就可以丢到垃圾桶里,我想这么理解就很不错了。但事实上,一份代码可能在写成之后,需要不断修改、升级发布新的版本,而在这个过程中会有很多人加入其中,所以在多次易手之后,代码能够让别人快速理解,那么清晰的逻辑结构以及良好的可读原创 2013-04-04 19:51:10 · 1434 阅读 · 0 评论