摘要: 定义 "将一个复杂对象的构建与它的表现分离,使得同样的构建过程可以创建不同的表现"。 最初的定义出现于《设计模式》(Addison-Wesley,1994)。 看这个概念,可能感觉... 阅读全文
posted @ 2013-12-10 22:25 GofLee 阅读(198) 评论(0) 推荐(0)
摘要: 原型模式的定义 “使用原型实例指定创建对象的种类,并通过复制这个原型创建新的对象”。最初的定义出现于《设计模式》(Addison-Wesley,1994)。 简单来理解就是根据这个原型创建新的对象,而且不需要知道任何... 阅读全文
posted @ 2013-12-07 08:49 GofLee 阅读(196) 评论(0) 推荐(0)
摘要: 个人整理的系统集成项目管理工程师考试资料,有需要的去下载(下载链接在最下面)吧。 目录如下所示: 第一章信息化基础知识 信息与信息化 政府信息化与电子政务 企业资源计划(Enterprise Resource Planning,ERP) 客户关系管理(Customer Relationship Management,CRM) 供应链管理(Supply Chain Management,SCM)... 阅读全文
posted @ 2013-12-04 16:46 GofLee 阅读(632) 评论(0) 推荐(0)
摘要: 说在前面 进入正式的设计模式交流之前,扯点闲话。我们在项目开发的过程中,经常会不经意的使用一些常见的设计模式,如单例模式、工厂方法模式、观察者模式等,以前做.NET开发的时候,认真拜读了一下程杰老师的《大话设计模式》,程老师用诙谐的语言,贴近生活的示例,让我对设计模式有了一个大致的了解。转型做IOS开发后,一直想阅读一下针对IOS设计模式方面的书籍,也买了一本《Objective-C编程之道:... 阅读全文
posted @ 2013-12-04 14:32 GofLee 阅读(163) 评论(0) 推荐(0)
摘要: 定义 一个软件实体(如类、模块、函数)应当对扩展开放,对修改关闭。 定义解读 在项目开发的时候,都不能指望需求是确定不变化的,大部分情况下,需求是变化的。那么如何应对需求变化的情况?这就是开放-关闭原则要谈的。 开放-封闭原则的思想就是设计的时候,尽量让设计的类做好后就不再修改,如果有新的需求,通过新加类的方式来满足,而不去修改现有的类(代码)。那么在实际的项目开发中,是否能做到绝对的... 阅读全文
posted @ 2013-12-03 18:28 GofLee 阅读(152) 评论(0) 推荐(0)
摘要: 定义 客户端不应该依赖它不需要的接口; 一个类对另一个类的依赖应该建立在最小的接口上。 定义解读 定义包含三层含义: 一个类对另一个类的依赖应该建立在最小的接口上; 一个接口代表一个角色,不应该将不同的角色都交给一个接口,因为这样可能会形成一个臃肿的大接口; 不应该强迫客户依赖它们从来不用的方法。 接口隔离原则有点像单一职责原则,但是也有区别,在单一职... 阅读全文
posted @ 2013-12-03 09:51 GofLee 阅读(184) 评论(0) 推荐(0)
摘要: 定义 高层模块不应该依赖于低层模块,二者都应该依赖于抽象;抽象不应该依赖细节;细节应该依赖抽象。 定义解读 依赖倒置原则在程序编码中经常运用,其核心思想就是面向接口编程,高层模块不应该依赖低层模块(原子操作的模块),两者都应该依赖于抽象。我们平时常说的“针对接口编程,不要针对实现编程”就是依赖倒转原则的最好体现:接口(也可以是抽象类)就是一种抽象,只要不修改接口声明,大家可以... 阅读全文
posted @ 2013-12-03 09:26 GofLee 阅读(220) 评论(0) 推荐(0)
摘要: 定义 狭义的迪米特法则定义:也叫最少知识原则(LKP,Least Knowledge Principle)。如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中的一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。 广义的迪米特法则定义:一个模块设计得好坏的一个重要的标志就是该模块在多大的程度上将自己的内部数据与实现有关的细节隐藏起来... 阅读全文
posted @ 2013-12-02 15:46 GofLee 阅读(178) 评论(0) 推荐(0)
摘要: 定义 里氏替换原则的定义有两种,据说是由麻省理工的一位姓里的女士所提出,因此以其名进行命名。 定义1:如果对一个类型为T1的对象o1,都有类型为T2的对象o2,使得以T1所定义的程序P中在o1全都替换成o2时,程序的行为不发生任何变化,那么T2为T1的子类。 定义2:所有引用父类的地方都必须能够透明地使用其子类对象。 定义解读 其实两个定义所表达的意思都相同,就是在所有... 阅读全文
posted @ 2013-12-01 17:52 GofLee 阅读(146) 评论(0) 推荐(0)
摘要: 下面这张UML图(该图为网上找到的),比较形象地展示了各种类图关系: 对于继承、实现这两种关系没多少疑问,它们体现的是一种类与类、或者类与接口间的纵向关系;其他的四者关系则体现的是类与类、或者类与接口间的引用、横向关系,是比较难区分的,有很多事物间的关系要想准确定位是很难的,前面也提到,这几种关系都是语义级别的,所以从代码层面并不能完全区分各种关系;但总的来说,后几种关系所... 阅读全文
posted @ 2013-11-29 10:39 GofLee 阅读(118) 评论(0) 推荐(0)