代码改变世界

随笔档案-2009年12月

Silverlight 从入门到精通

2009-12-31 21:12 by 闫妍, 198 阅读, 收藏,
摘要: Silverlight 是一种新的 Web 呈现技术,能在各种平台上运行。借助该技术,您将拥有内容丰富、视觉效果绚丽的交互式体验,而且,无论是在浏览器内、在多个设备上还是在桌面操作系统(如 Apple Macintosh)中,您都可以获得这种体验。 Silverlight 是非常好的技术平台,发展方向,所以我们要努力学好Silverlight。、 Silverli... 阅读全文

回顾2009,展望2010。

2009-12-31 09:09 by 闫妍, 171 阅读, 收藏,
摘要: 回顾2009,展望2010。 2009即将过去,总结2009年,计划2010年。 2009年12月31日。 阅读全文

使用 Windows 7 自带 备份工具 备份系统

2009-12-30 18:25 by 闫妍, 261 阅读, 收藏,
摘要: 转自:http://www.ncfix.com/2009/0927/3757.html 1,点击屏幕左下角的Windows开始按钮在出现的菜单中单击选择“控制面板”。 2,在控制面板中单击选择“系统和安全”。 3,在系统和安全中单击选择“备份和还原”。 4,单击选择左上角的“创建系统映像”。 5,系统会自动检测可用于创建备份的硬盘分区(不包含系统盘和USB存储设备),接着会出现下图所示的窗... 阅读全文

LINQ to SQL语句之Insert/Update/Delete操作

2009-12-30 14:54 by 闫妍, 175 阅读, 收藏,
摘要: Insert/Update/Delete操作 插入(Insert) 1.简单形式 说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提交到数据库。 NorthwindDataContext db = new NorthwindDataContext(); var newCustomer = new Customer { ... 阅读全文

小型临时 SVN 配置管理说明

2009-12-29 11:38 by 闫妍, 203 阅读, 收藏,
摘要: 为什么选择SVN做配置管理服务器 在.Net 最好的配置服务器是TFS,但是这个软件非常庞大,配置繁琐。 而SVN是开发界应用最为广泛的开源配置管理平台,版本更新迅速,快捷好用,功能强大,支持多种访问方式,这个项目的Team相对较小,所以选择了SVN。 版本库服务地址 http://XX.XXX.XXX.X:8080/svn/WebOS/Trunk 为了不与我们的发布服务器端口冲突,我选择了808... 阅读全文

Expression Studio 3 简体中文(Blend Design Encoder Web) 破解 序列号 Key License

2009-12-27 22:30 by 闫妍, 355 阅读, 收藏,
摘要: 资源来自网络,共享给大家,提供给 Expression 学习爱好者学习交流,事业用途请购买正版。 方法:安装好官方体验版后,将附件中的Dll文件,替换每个设计工具安装根目录下的文件即可。 ExpressionStudio3_Crack.zip 阅读全文

解决 Silverlight 调用 WCF 服务 跨域访问 和 Silverlight 引用服务后配置文件不加载的问题

2009-12-27 11:51 by 闫妍, 172 阅读, 收藏,
摘要: 跨域访问,估计是Silverlight 调用WCF,都会碰到的问题,我也一样 重点,跨域文件一定要放对地方,位置一定是http://域名/clientaccesspolicy.xml 这样可以访问到才行 这个域名的根目录的实际访问目录下 我们需要把clientaccesspolicy.xml文件,放到发布WCF服务的根目录中(问题是,如果发布的载体不是IIS呢,是WPF,像上一个程序那样,这个问... 阅读全文

解决 配置文件 类型初始值设定项引发异常 报错

2009-12-26 11:17 by 闫妍, 249 阅读, 收藏,
摘要: 不一定准确但你可以将配置文件中的信息,复制到启动项目的配置文件中,即可解决。 出这个问题你可以看一下你的项目中配置文件中使用的配置信息。 这个问题一定是出在一个解决方案中有多个项目 比如,你在项目A中有配置文件配置了一个配置信息,但是这个项目也许是类库,而类库不是启动项目。 其他的项目去引用这个类库项目,比如一个ASP.Net 项目,而这个Web.config 中没有连接字符串,结果报错了。 只要... 阅读全文

WCF 一步一步 编写访问 WCF服务 的客户端程序

2009-12-25 13:21 by 闫妍, 211 阅读, 收藏,
摘要: 通过前面的几节内容我们知道了发布WCF的几种方式,下面我们要来编写一个客户端来访问我们发布的WCF服务。 首先我们打开一个之前建立好的WCF服务程序,我的WPF服务程序还没有关闭,就使用他吧。 为这个解决方案添加一个项目,这里我添加了一个Silverlight 3 应用程序。 当然,你也可以选择控制台程序、WinForm、ASP.NET中的任何一个,甚至还可以是其它语言的应用程序,如:Java... 阅读全文

WCF 一步一步 创建一个承载 WCF服务 的WPF应用程序 (图)

2009-12-25 13:13 by 闫妍, 292 阅读, 收藏,
摘要: 之前我们建立了一个WCF服务站点,通过把WCF服务站点布署到IIS中去,实现WCF服务在Web上的发布,这是一个非常简单实用的方法,我推荐将服务部署在IIS上,IIS会为我们提供服务器程序所具有的诸多特性,而无需我们自己手动去编写或者考虑。 那么如何编写一个桌面程序发布服务,为本机或远程机提供WCF服务呢,其实也很简单,下面我们就来建立一个简单的WPF程序,让他来发布和管理我们的WCF服务。 首先... 阅读全文

新的工作电脑 神州优雅A550-i7

2009-12-23 21:44 by 闫妍, 192 阅读, 收藏,
摘要: 新的工作电脑,神州优雅A550-i7,也推荐给大家,只想讲给大家买神州很好,一点也不丢脸,不要为了牌子多花钱,世界上80%的笔记本出自中国(包括台湾),我们应该支持价廉物美。 我评价A550-i7 价格便宜,性能强进,外观也非常的漂亮。 i7的处理器,PM55主板,全系列的Intel外围设备(声卡,网卡等),DDR3 4G 内存,GT 240M显卡,15.4的高亮屏幕,面板漾印工艺好看,正版Win... 阅读全文

WCF 一步一步 发布 WCF服务 到 Windows 服务 (图)

2009-12-23 12:17 by 闫妍, 116 阅读, 收藏,
摘要: 刚才我们发布了WCF到IIS,下面咱们把WCF,再发布到Windows 服务 WCF是个好东西,对他的赞美之词的确不少,是微软无数开发者的智慧结晶,如果你在学习或者在用WCF,我真的为你感到高兴,在我上学的时候想要去解决兼容性和平衡性能问题,需要那么多专业知识和时间,而现在的WCF,只需要简单的配置就可以实现。 咱们要先用起来是第一步,不落后于时代,不排斥新技术。 阅读全文

WCF 一步一步 发布 WCF服务 到 IIS (图)

2009-12-22 09:08 by 闫妍, 238 阅读, 收藏,
摘要: 使用VS自带的WCFSVCHost(WCF服务主机)发布WCF服务,时刻开发人员测试使用。 下面我们来看一下如何在IIS中部发布一个WCF服务。 环境是VS 2008 (公司电脑没有安装VS2010)^_^ 我们从头开始,不写代码,完全的配置,会收获不小。 新建一个WCF 服务库 建立一个WCF服务应用程序 结果如下 删除掉WCF程序中不需要的默认文件,如下图 为WcfServ... 阅读全文

WCF 第一个用 Visual Studio 2010 创建的WCF服务

2009-12-20 18:37 by 闫妍, 186 阅读, 收藏,
摘要: 在这个例子中我们将使用VS 2010 U 创建一个WCF服务,其中会了解 [DataContract] [ServiceContract] 等特性。 内置的 WCFSVCHost ,并使用“WCF测试客户端”来测试我们创建的服务。 注意下面的所有类、接口及方法都添加了public 的访问级别。 一,建立一个WCF服务库 创建一个WCF服务库项目, 在解决方案中会自动为我们生成两个类文件... 阅读全文

访问者模式(Visitor)

2009-12-20 16:13 by 闫妍, 165 阅读, 收藏,
摘要: 重点概念 1. 双分派:得到执行的操作决定于请求的种类和接收者的类型。 2. 访问者模式据说是GoF最复杂的模式,不过也不是很难理解。 3. 表示一个作用于某对象结构中的各元素的操作。它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。 4. 适用于数据结构相对稳定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由地演化。 5. 访... 阅读全文

解释器模式(Interpreter)

2009-12-20 14:02 by 闫妍, 209 阅读, 收藏,
摘要: 重要概念 1. 给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。 2. 如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题(比如正则表达式)。 3. 定义一组对指定类型内容做参数的操作,每个操作都做出不同的输出。操作出自一个基类... 阅读全文

微软展望科技的视频

2009-12-20 10:04 by 闫妍, 116 阅读, 收藏,
摘要: 不是很清晰,但大概意思了解。 看这些视频的时候我一直思考技术实现,你认为这一天会在多久后实现?我感觉应该在15Year左右,在里面所需要的基础技术都已经被提出并实现和加强,智能终端、Internet终端、无线Internet、云计算,将所有的事物联系在一起(物联网)。 所有的科技企业,研发人员都在为这一天而不断努力,相信就在不久的将来10年,20年,我... 阅读全文

解决 Visual Stuido 工具栏中的工具重置后,恢复回来。

2009-12-18 17:06 by 闫妍, 194 阅读, 收藏,
摘要: 拿DevExpress 控件为例,如果重置工具栏后,以前的工具和分类就会消失,如果手动一个个的添加是可以的,但是太费时间。 在DevExpress中有一个重置的工具,关闭VS,启动它即可恢复。 看下面,很多,如果是手动不知道要恢复到什么时候去呢 阅读全文

理解软件外包的种类

2009-12-17 21:11 by 闫妍, 222 阅读, 收藏,
摘要: 包项目 包人 包时间 阅读全文

享元模式(Flyweight)

2009-12-13 19:26 by 闫妍, 178 阅读, 收藏,
摘要: 重点概念 1. 这个模式相对简单。享元模式,就是在工厂中包含所要共享的元素实例,多个对象通过发给这个工厂所需要对象的标记,获得同一个实例,这样多个对象的操作只需要一个对象实例即可,看基础代码示例。 2. 内部状态(共享对象)和外部状态(个性化部分)(代码示例见后面网站第三版) 核心意思,是需要改变的内容部分,可以作为参数传递给方法,而对象本身依然是一个。 3. 如果一个应用程... 阅读全文

中介者模式(Mediator)

2009-12-13 17:40 by 闫妍, 173 阅读, 收藏,
摘要: 重要概念 1. 中介者模式,消息的传递需要在中介者对象中进行判断控制该发送给谁,中介者对象还需要知道所有的传递者对象,关键就在这中介者对象上,他的职责太多了。 2. 优点:中介者减少了各个沟通者的耦合,使得可以独立地改变和复用各个沟通者类和中介者。 3. 优点:中介者把如何协作进行了抽象,将中介概念封装在对象中,将关注从对象本身转移到了他们的交互上来,站在更宏观的角度去看待系统,也就是... 阅读全文

职责链模式(Chain of Responsibility)

2009-12-13 16:13 by 闫妍, 172 阅读, 收藏,
摘要: 重要概念 1. 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 2.请求是沿着链条传递到有一个处理点对象负责处理这个请求为止。请求者无需关心谁会处理这个请求。 3. 接收者和发送者都没有对方的明确信息,且链中的对象自己也并不知道链的结构。结果是职责链可简化对象的相互连接,他们仅需保持一个指... 阅读全文

命令模式(Command)

2009-12-13 14:16 by 闫妍, 181 阅读, 收藏,
摘要: 重要概念 1.命令抽象类,也是命令模式的核心理解 2.命令模式能较容易的设计一个命令队列,在需要的情况下,可以容易地将命令计入日志,并允许接收请求的一方可以判断否决掉请求。 3. 可以容易的实现对请求的撤销和重做。 4. 由于加进新的具体命令类不影响其他的类,因此添加新的具体命令类很容易。 5.命令模式把请求一个操作的对象与指导怎么执行的操作的对象通过命令对象分割开. 示例代码 u... 阅读全文

桥接模式(Bridge)与合成/聚合复用原则(CARP)

2009-12-13 12:40 by 闫妍, 278 阅读, 收藏,
摘要: 重要概念 1.合成/聚合复用原则:优先使用对象合成/聚合(UML中的两个菱形关系),而不是类继承。尽量使用合成/聚合,不使用类继承,继承属于强耦合的结构。 2.合成/聚合复用好处:优先使用对象的合成/聚合将有助于你保持每个类被封装,并被集中在单个任务上。这样类和类继承层次会保持较小规模,并且不太可能增长为不可控制的庞然大物。 3. 将抽象部分与它的实现部分分离,使他们都可以独立地... 阅读全文

新的技术和概念应该尽可能先去接受,而不是排斥。

2009-12-11 10:35 by 闫妍, 174 阅读, 收藏,
摘要: 新的技术和概念我们应该尽可能的先去接受,而不是排斥。 也许你对这个技术和概念持反对的意见,或者这个技术带来的复杂程度远超出我们的承受能力,甚至它对你的工作和生活没有用,没有帮助。 我们也要去接受它,不要排斥它,不是因为我们要追求“时尚”“赶潮流”。而是让我们有更多知识储备与别人沟通交谈,与时代保持同步,甚至你是准备要反驳对方。 否则我们可能就会一步一步的被大环境所淘汰,慢慢的老化我们的思想,技术,... 阅读全文

WCF 基础知识和术语表(MSDN)

2009-12-11 08:56 by 闫妍, 137 阅读, 收藏,
摘要: WCF 基础知识 Windows Communication Foundation (WCF) 是一个运行库和一组 API,用于创建在服务与客户端之间发送消息的系统。它使用相同的基础结构和 API 来创建应用程序,这些应用程序可与同一计算机系统上或驻留在另一家公司内并通过 Internet 访问的系统上的其他应用程序进行通信。 消息和终结点 WCF 建立在基于消息的通信这一概念基础之上,可以建... 阅读全文

大型网站性能优化的通用方法

2009-12-10 12:56 by 闫妍, 239 阅读, 收藏,
摘要: 1、HTML静态化其实大家都知道,效率最高、消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法。但是对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现,于是出现了我们常见的信息发布系统CMS,像我们常访问的各个门户站点的新闻频道,甚至他们的其他频道,都是通过信息发布系统来管理和实现的,信息发布系统可以实现最简单的... 阅读全文

单例模式(Singleton)

2009-12-06 19:55 by 闫妍, 185 阅读, 收藏,
摘要: 重点概念 1. 所有类都有构造方法,不编码则系统默认生成空的构造方法,若有显示定义的构造方法,默认的构造方法就会失效。 2. 将构造方法私有化,并提供一个创建自己实例的方法,在方法中去做是否有实例化的判断,判断需要一个自己的静态变量。 3. 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 4. 让类自身负责保存它的唯一实例,这个类可以保证没有其他实例可以被创建,并且它可以提供一个访... 阅读全文

迭代器模式(Iterator)

2009-12-06 16:48 by 闫妍, 216 阅读, 收藏,
摘要: C# 中已经实现了迭代器功能, foreach in 和 IEnumerable 和 IEumerator 接口 是为迭代器而准备的。 所以在实用性上已经没有了。 重点概念 1.提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。 2.当访问一个聚集对象,而且不管这些对象是什么都需要遍历的时候,你就应该考虑用迭代器模式。 3.遍历的方式可以从头到尾,也可以从尾到头的选择... 阅读全文

组合模式(Composite)

2009-12-06 15:39 by 闫妍, 185 阅读, 收藏,
摘要: 重要概念 1. 将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 2. 透明方式与安全方式 透明方式:抽象层接口最大化 安全方式:抽象层接口最小化 3.需求中是体现部分和整体层次的结构时,以及你希望用户可以忽略组合对象与单个对象的不同,统一地使用组合结构中的所有对象时,就应该考虑用组合模式了。 4. 组合模式的核心技... 阅读全文

备忘录模式(Memento)

2009-12-06 10:59 by 闫妍, 229 阅读, 收藏,
摘要: 重点概念 1. 希望把存取状态的细节封装起来,而且最好是封装在外部的类当中,以体现职责分离。 2. 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保持你的状态。 3.要保存的细节给封装在了Memento中,修改备忘录中数据也不会影响客户端。 4.备忘录模式适合功能复杂但需要维护或记录属性历史的类,或者可选的去备份和恢复某一... 阅读全文

适配器模式(Adapter)

2009-12-03 22:59 by 闫妍, 181 阅读, 收藏,
摘要: 适配器模式比较简单常用,他封装不匹配的接口,提供合适的接口。 重要概念 1. 适配器模式,将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原来由于接口不兼容而不能一起工作的那些类可以一起工作。 2. 概念:当需要的东西就在面前,却不能使用,而短时间又无法改造它,于是我们就想办法适配它。适配器使一个方法适合另一个方法。 3. 系统的数据和行为都正确,但接口不符时,我们应该考... 阅读全文

状态模式(State)

2009-12-03 17:53 by 闫妍, 252 阅读, 收藏,
摘要: 重点概念 1. 方法内容如果过长其实就有可能出了问题。 2. 当一个对象的内在状态改变时通过调用状态类(一个类)中的方法,同事传递自己(this),状态的判断及执行全部移到了这个状态类当中。 3. 状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化。 4. 状态模式的好处是将与特定状态相关的行为局部... 阅读全文

Windows Phone 一步一步从入门到精通

2009-12-03 09:46 by 闫妍, 143 阅读, 收藏,
摘要: 手机应用作为解决方案中非常重要的一部分,是必须要学习。 手机作为智能终端最容易被大众接受的一种消费品可以说是人手一个,是未来应用开发的重点。 目录 1. 图文一步步详细描述刷机Mobile 6.5 的过程(内涵6700、6750、6800、6900刷机工具及驱动) 2. Windows 7 搭建 Mobile 6 真机调试开发环境 3. Mobile GPS 模拟数据获取示例 4. Mobil... 阅读全文

Windows Workflow Foundation(WF) 一步一步从入门到精通

2009-12-03 09:06 by 闫妍, 205 阅读, 收藏,
摘要: Windows Workflow Foundation(WF)使用了一种开创性的方法来编写和执行程序。WF程序是由一些可恢复的语句块(称为活动)组成的,封装了专有领域的逻辑和控制流的模式,这些模式都可以映射到真实世界的处理流程。 Windows Workflow Foundation(WF)是一个通用的编程框架,它可用于创建需要对外部实体的信号作出响应的交互式程序。交互式程序的基本特... 阅读全文

抽象工厂模式(Abstract Factory)

2009-12-02 22:20 by 闫妍, 191 阅读, 收藏,
摘要: 开闭原则和依赖倒置原则是面向对象设计的重点,编程是一门艺术,大批量的改动,是不好看的做法。 重点概念 1. 工厂方法模式(不是抽象工厂)是定义一个用于创建对象的接口,让子类中实现这个接口的方法中的内容决定实例化那一个类(New 什么类)。 2. 抽象工厂模式提供几个创建类的接口,具体抽象子类利用父类定义的方法创建相关的“产品抽象类型”的一组子类具体实现。 3. 从上图中可以看出,抽象... 阅读全文

观察者(发布订阅)模式 与 委托事件

2009-12-02 17:07 by 闫妍, 230 阅读, 收藏,
摘要: 多一些宽容 重点概念 1. 开放封闭原则,修改原有代码就说明不够好,依赖倒转原则,应该让程序依赖抽象不依赖细节。 2.定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使他们能够自动更新自己。 3. 上图中Subject类,是抽象通知者(主题),一般用一个抽象类或者一个接口实现。他把所有观察者(关注Subje... 阅读全文

建造者模式(Bulider)

2009-12-02 13:51 by 闫妍, 216 阅读, 收藏,
摘要: 知识点回顾 1. 将一个复杂对象的构建与他的表示分离(初始多个成员值并返回这个对象),使得同样的构建过程可以创建不同的表示时,使用建造者模式。 2. 使用建造者模式,用户只需要指定建造的类型就可以得到他们,而具体建造的过程和细节不需要知道,他们被封装在具体的建造类中,扩展具体建造类来丰富建造的特例。 3. 指挥者(Director)类,用来控制建造过程,也用它来隔离用户与建造过程的关联,指挥... 阅读全文

外观模式(Facade)

2009-12-01 20:41 by 闫妍, 175 阅读, 收藏,
摘要: 重点概念回顾 1.为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一个子系统更觉容易使用。 2. 即使不知道外观模式也一定使用过外观模式,他完美的体现了依赖倒置(面向接口编程)原则和迪米特法则(功能松耦合)的思想,十分常用。 3. 外观模式的核心是,通过将分散的功能包含在外观类中,从而提供一致的操作接口,封装实现,起到了松耦合的目的 4. 在设计的初期... 阅读全文

迪米特法则(LoD)最少知识原则

2009-12-01 17:33 by 闫妍, 161 阅读, 收藏,
摘要: 重要概念 1.拉米特法则,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用(尽可能的封闭私有)。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用(如通过调用接口定义)。 2.在类的接口设计上,每一个类都应当尽量降低成员的访问权限,封装好私有成员,不需要被其他类知道的属性或方法就不要公开。 3.迪米特法则其根本思想,是强调了类之间的松耦合,类之间的耦... 阅读全文

模板方法模式

2009-12-01 16:22 by 闫妍, 187 阅读, 收藏,
摘要: 概念回顾 1. 使用了继承,并肯定了这个继承的意义,就应该要成为子类的模板,所有重复的代码都应该要上升到父类去,而不是让每个子类都去重复。 2. 当我们要完成在某一细节层次一致的一个过程或一系列步骤,但其个别步骤在更详细的层次上的实现可能不同时,我们通常考虑用模板来处理。 3. 定义一个操作中的算法的骨架,而将其中的一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算... 阅读全文

原型模式(Prototype)

2009-12-01 12:53 by 闫妍, 155 阅读, 收藏,
摘要: 重要概念回顾 1. 原型模式用原型实例(类中有一个复制自己的方法)指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 2.原型模式其实就是从一个对象再创建另外一个可定制的对象,而且不知道任何创建的细节。 3.对于.Net 在System命名空间中提供了ICloneable 接口,其中有一个唯一的方法就是Clone()。所以只需要实现这个接口就可以完成原型模式了,代替了上图中的Pro... 阅读全文

工厂方法模式(Factory Method)

2009-12-01 10:57 by 闫妍, 247 阅读, 收藏,
摘要: 重要概念 本章内容围绕简单工厂与工厂方法的比较很好的说明了工厂方法模式。 1.简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除类与具体产品的依赖,且无需修改代码,因为逻辑已经包含在了工厂类当中。 2.工厂方法模式定义一个用于创建对象的接口,让子类决定实例化那一个类。工厂方法使一个类的实例化延迟到子类。 3.实际上封装... 阅读全文