设计模式是为程序代码优化而诞生的,目的是设计出易维护、容易拓展、易复用、灵活性好的程序。设计模式体现是面向对象的三大思想:封装、继承和多态。设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计...
分类:
其他好文 时间:
2014-06-07 01:29:07
阅读次数:
257
中介者模式,用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显示的相互引用,从而使其耦合松散,而且可以独立的改变他们之间的交互。
ConcreteMediator是具体中介者对象,实现抽象类的方法,它需要知道所有具体同事类,并从具体同事接受消息,向具体同事对象发出命令。
中介者模式的优缺点:
中介者的出现减少了各个对象之间的耦合性,使得可以独立的改变和复用。它使得各...
分类:
其他好文 时间:
2014-06-05 09:11:36
阅读次数:
242
设计模式是从许多优秀的软件系统中总结出来的代码设计经验,也就是一些扩展性、灵活性好,易于维护和复用的设计方案,这可是前辈们的头破血流换来的。我们要站在巨人的肩膀上,吸取宝贵的经验,设计出优秀的软件系统来面对这个需求日新月异的信息时代。
设计模式以实现”六大原则“为方针,主要有23个,分为三大类。...
分类:
其他好文 时间:
2014-06-05 03:51:39
阅读次数:
214
继承和组合都可以达到代码复用的目的,但是组合比继承更具灵活性。组合是通过引用已有类(一般为抽象类)或接口来实现复用的组合在运行时通过多态可以动态替换被组合的对象。继承是通过以子类继承父类方式来使父类的非私有成员可以被其子类使用。继承在类编译时就确定了继承来的方法和属性,无法在运行时动态改变从父类继承...
分类:
其他好文 时间:
2014-05-31 16:52:23
阅读次数:
196
Select#include #include #include int select
(int n, fd_setreadfds, fd_setwritefds, fd_setexceptfds, struct
timevaltimeout);FD_CLR(int fd, fd_set *set)...
分类:
系统相关 时间:
2014-05-31 02:32:17
阅读次数:
508
在前文《依赖管理》中,我们讨论了如何在代码变得庞大,组件增多的情况下,做好外部库和内部组件依赖管理,从而提高构建效率。可以应用的实践包括:一次生成,多次复用;建立统一制品库,外部依赖库可以使用像Maven或Ivy这样的工具进行统一管理;对架构进行调整,使一个大的代码库分成多个组件;每个组件有自己的持...
分类:
其他好文 时间:
2014-05-30 20:05:23
阅读次数:
363
不同的编程语言都有各自的代码组织和复用的方式,如.net、php中的命名空间,python中的import,ruby中的module等,来避免命名空间污染。一直都没搞清楚node中的exports和module.exports的区别,借此搞清楚node的代码模块复用方式。首先怎么创建node中的mo...
分类:
Web程序 时间:
2014-05-30 14:47:27
阅读次数:
236
泛型l
泛型(generic)编程是一种编程范式,它利用”参数化类型”将类型抽象化,从而可以实现更为灵活的复用.把数据类型参数化sh泛型集合泛型集合与集合的对比泛型集合类非泛型集合类ListArrayListDictionaryHashTableStackStackQueueQueuesortedD...
分类:
其他好文 时间:
2014-05-29 14:27:14
阅读次数:
220
GPIO Beaglebone
Back开发板引出了92个引脚,其中只有65个GPIO口可通过配置使用,由于引脚具有“复用”的特性,大约每个引脚有8种工作模式(Beagle System
Reference Manual),默认情况下,设为Mode7。由于P8扩展部分的引脚功能相对简单,复用不多.....
分类:
其他好文 时间:
2014-05-29 04:00:47
阅读次数:
390
在开发中,经常需要打开另一个窗体(简写为“开窗”),然后在开窗中进行数据筛选,选中需要的数据,最后将值传递给本原来的窗体。而且,这个开窗可以重复用于多个地方,其效果如同日历控件的弹出窗口。如下图所示:测试环境vs2008基本思路1、创建一个窗体类。
(1)为该类添加用于传递值的属性。 (2)为该类添...