摘要:
从ASP或者VB转来的程序员,肯定以前对于OO思维不太熟悉,开心特从重粒子空间转来此文,希望对大家有所帮助。 采用OO软体开发方法的过程中﹐许多人自然而然偏重于技术层面﹐例如﹐使用OO分解(object-oriented decomposition) 来进行模组化﹐运用继承功能来建立类别体系(class hierarchy) 等等。不过﹐偏好于技术者﹐往往会忽略这些技术背后的心理因素﹔也就是OO思... 阅读全文
摘要:
概念: Builder:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 ------------------------------------------------------------------------------------- “嘿,Andy,来帮帮忙,帮我装装机子吧。”,Helen又在那喳喳呼呼了。 “好的,好的,喔……,新机诶!”,走过去一看,And... 阅读全文
摘要:
概念: Bridge:将抽象部分与它的实现部分分离,使它们都可以独立地变化。 -------------------------------------- 烈日,当空;没有一丝风,真的让人感觉透不过气来。想起去年夏天在没有空调的房子里写代码,^_^,真是对人性的一种考验。AndyTao正想着,不觉笑了。午休时间也快过了,继续写我的代码吧。 “Andy,过来帮我看看嘛!”一串银铃声传了过来。 “唉,... 阅读全文
摘要:
定义:Adapter:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 角色设定: Helen,初次接触设计模式的美女程序员(没有BF)。 AndyTao,高手,战斗力达到N级,对设计模式有相当程度的了解。 问题的提出: Helen埋首在公司自己的小空间里写着代码,(旁白:她虽然是个美女,但是写代码的水平还是不错的... 阅读全文
摘要:
定义:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。提供创建对象的接。 工厂模式是我们最常用的模式,是用来创建对象的,它就相当于创建对象的new。 例如我们有一个类Example,我们要创建Example的对象: Example example=new Example();或 Example example=new Example(参数); 如果创建Example时做的事情... 阅读全文
摘要:
如果你有一定的面向对象编程经验,你会发现其中某些设计模式你已经无意识的使用过了;如果你是一个新手,那么从开始就培养自己良好的编程习惯(让你的的程序使用通用的模式,便于他人理解;让你自己减少重复性的编程工作),这无疑是成为一个优秀程序员的必备条件. 整个设计模式贯穿一个原理:面对接口编程,而不是面对实现.目标原则是:降低耦合,增强灵活性. 一些基本的设计模式 Abstract Factory:提... 阅读全文
摘要:
设计模式是面向对象编程的热门话题之一,越来越多的开发人员认识到设计模式的重要性。采用各种语言实现设计模式的文章也越来越多,但是很多开发人员发现很难将设计模式与实际开发中需要解决的具体问题相联系。因为使用设计模式的难点往往不在于模式的实现,而在于很难确定哪种模式可以在现实的应用场景中采用,从而导致了在现实的项目中,面对客户的压力,我们总是采用最直截了当的方法解决问题,来不及多考虑这些方法的优劣,即使... 阅读全文
摘要:
入门级- 过程/Procedural:在编写OO程序时还像其编写C或Basic程序一样,有大量的static方法和 public/global变量, 将这些放在一起就像他们使用 C的头文件或Pascal模块一样。 初级 - 抽象/Abstract:知道对象是带有可以使用的状态和方法的实体,可以考虑一些抽象层次的东西,知道封装。 中级 - 层次/Hierarchical:知道如何使用对象的继承性... 阅读全文