上一页 1 2 3 4 5 6 7 8 ··· 14 下一页
摘要: 一、概念将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。——Gang of Four Adapter模式的宗旨:保留现有类所提供的服务,向客户提供接口,以满足客户的期望。 对象适配器模式 -- 在这种适配器模式中,适配器容纳一个它包裹的类的实例。在这种情况下,适配器调用被包裹对象的物理实体。类适配器模式-- 这种适配器模式下,适配器继承自已实现的类(一般多重继承)。二、要点客户:需要调用我们的代码的对象。类适配器:当客户在接口中定义了他期望的行为时,我们就可以应用适配器模式,提供一个实现该接口的类,并且扩展已有的类,通过创 阅读全文
posted @ 2012-02-06 13:37 残夜 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 一、概念工厂方法(Factory Method)模式的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中。核心工厂类不再负责产品的创建,这样核心类成为一个抽象工厂角色,仅负责具体工厂子类必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引进新的产品。工厂方法模式是简单工厂模式的衍生,解决了许多简单工厂模式的问题。首先完全实现‘开-闭 原则’,实现了可扩展。其次更复杂的层次结构,可以应用于产品结果复杂的场合。 二、要点抽象工厂(Creator)角色:是工厂方法模式的核心,与应用程序无关。任何在模式中创建的对象的工厂类必须实现这个接口。具 阅读全文
posted @ 2012-02-05 11:08 残夜 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 一、概念简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。二、要点简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。 该模式中包含的角色及其职责:工厂(Creator)角色: 简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。抽象产品(Product)角色: 简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共 阅读全文
posted @ 2012-02-04 11:01 残夜 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 一、概念单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供全局访问点。这个类称为单例类。 二、要点单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。实现单例模式的思路是:一个类能返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法,通常使用getInstance这个名称);当我们调用这个方法时,如果类持有的引用不为空就返回这个引用,如果类保持的引用为空就创建该类的实例并将实例的引用赋予该类保持的引用;同时我们还将该类的构造函数定义为私有方法,这样其他处的代码就无法通过调用该类的构造函数来实例化该类的 阅读全文
posted @ 2012-02-04 10:04 残夜 阅读(607) 评论(0) 推荐(0) 编辑
摘要: 一、概念Decorator模式(别名Wrapper):动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的代替方案。二、设计原则多用组合,少用继承。类应设计的对扩展开放,对修改关闭。利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用组合的做法扩展对象的行为,就可以在运行时动态地进行扩展。 三、要点:装饰者和被装饰对象有相同的超类型。可以用一个或多个装饰者包装一个对象。装饰者可以在所委托被装饰者的行为之前或之后,加上自己的行为,以达到特定的目的。对象可以在任何时候被装饰,所以可以在运行时动态的,不限量的用你喜欢的装饰者来装饰对象。装 阅读全文
posted @ 2012-02-03 16:24 残夜 阅读(652) 评论(0) 推荐(0) 编辑
摘要: 一、概念观察者模式定义了对象间的一种一对多依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新(The Observer Pattern defines a one-to-many dependency between objects so that when one object changes state, all of its dependents are notified and updated automatically.)。二、观察者模式的组成Subject(被观察的对象接口)规定ConcreteSubject的统一接口;每个Subject可以有多个Ob 阅读全文
posted @ 2012-02-03 15:23 残夜 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 一、概念策略模式(Strategy):它定义了一系列的算法(策略实现),并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。(原文:The Strategy Pattern defines a family of algorithms,encapsulates each one,and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it.)二、策略模式的组成抽象策略角色(Strategy): 策略类,通常 阅读全文
posted @ 2012-02-02 12:47 残夜 阅读(446) 评论(0) 推荐(0) 编辑
摘要: 整篇文章在开头提出以下三个问题:问题一:你真的了解面向对象吗?问题二:你准确的知道什么是模式吗?问题三:你知道如何使用设计模式吗?这里也放在最前面用于思考。什么是设计模式?模式是针对特定场景下的特定问题的可复用、可表达的解决方案。面向模式设计是从分析到实现的设计模式,基于模式的分析使你成为一个更有力、更高效的分析者,因为它们让你更抽象的处理你的模型;其帮助人们学习面向对象的原则,帮助解释“为什么我们要这样处理这些对象” 使用模式的观念:如何使用模式来理解问题(概念)领域,而不仅仅在理解问题领域后使用模式来完成一个设计。程序设计的错误思路:先创建问题领域中的类,然后将这些类缝合起来组成最终的系统 阅读全文
posted @ 2012-02-02 10:25 残夜 阅读(594) 评论(0) 推荐(0) 编辑
摘要: 一、Struts工作原理1.1 Struts拦截用户请求Struts框架控制器分为核心控制器(拦截用户请求ActionServlet)和业务逻辑控制器(处理用户请求Action)。下面是序列图:1.2 Struts程序流程Client发出的请求被 ActionServlet拦截到后有两种情况:1.要求逻辑控制器处理,2.简单转发请求(Http请求无需Action处理,也不用填充ActionForm,直接转发)。Forward有全局和局部两种,局部优先。Action使用ActionMapping控制转发时,只需要转发到Forward的逻辑名,而无需知道具体的资源,这样可降低耦合程度。逻辑名与实际 阅读全文
posted @ 2012-01-17 16:23 残夜 阅读(1376) 评论(0) 推荐(0) 编辑
摘要: 一、网络编程基本概念1.OSI与TCP/IP体系模型2.IP和端口解决了文章最开始提到的定位的问题。IP在互联网中能唯一标识一台计算机,是每一台计算机的唯一标识(身份证);网络编程是和远程计算机的通信,所以必须先能定位到远程计算机;IP帮助解决此问题;一台计算机中可能有很多进程,具体和哪一个进程进行通信,这就得靠端口来识别;IP和端口能唯一定位到需要通信的进程。这里的IP表示地址,区别于IP协议。在OSI体系还是TCP/IP体系中,IP协议位于网际层,来封装IP地址到报文中。3.TCP和UDP协议TCP是Tranfer Control Protocol的简称,是一种面向连接的保证可靠传输的协议 阅读全文
posted @ 2012-01-16 14:15 残夜 阅读(10760) 评论(4) 推荐(8) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 14 下一页