23种设计模式
文章平均质量分 77
ao929929fei
这个作者很懒,什么都没留下…
展开
-
23种设计模式——Factory模式
在面向对象系统设计中经常可以遇到以下的两类问题: 1)为了提高内聚(Cohesion)和松耦合(Coupling),我们经常会抽象出一些类的公共接口以形成抽象基类或者接口。这样我们可以通过声明一个指向基类的指针来指向实际的子类实现,达到了多态的目的。这里很容易出现的一个问转载 2011-09-19 13:39:25 · 435 阅读 · 0 评论 -
Android代码的Builder模式实现
package com.metech.request;import java.util.List;import org.json.JSONArray;import org.json.JSONException;import org.json.JSONObject;import com.google.gson.JsonArray;import com.metech.app.Serv原创 2017-06-08 12:25:23 · 283 阅读 · 0 评论 -
23中设计模式——Command模式
一、描述有时需要向对象发送请求,但是不知道 "被请求的操作" 或 "请求的接受者" 的任何信息。在面向过程的程序设计语言中,这类通信是通过回调函数来完成的:在某个地方登记这个函数,然后在后面调用它。在面向对象程序中,command(命令)与回调函数等价,它封装了回调函数。转载 2011-10-12 19:04:50 · 553 阅读 · 0 评论 -
23中设计模式——Observer模式
一、描述Observer模式定义对象间的一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新。JDK里提供的observer设计模式的实现由java.util.Observable类和 java.util.Observer接口组成。从名字上转载 2011-10-12 19:20:38 · 482 阅读 · 0 评论 -
23中设计模式——Template模式
一、功能在面向对象的分析和设计中经常遇到这样一种情况:对于某一个业务逻辑(算法实现)在不同的对象中有不同的细节实现,但逻辑(算法)的框架(或通用的应用算法)是相同的,Template模式提供了这种情况的一个实现框架。Template模式是采用继承的方式实现这一点的:将逻辑转载 2011-10-11 20:41:47 · 385 阅读 · 0 评论 -
23中设计模式——Strategy模式
一、描述Strategy模式和Template模式要解决的问题是类似的。Template模式使用继承来变换部分算法,Strategy模式则使用代理和组合来变换所有的算法并支持动态变换。以后,将使用context对象在运行期动态的分配具体的算法。同样,通过使用context对象转载 2011-10-12 09:23:23 · 403 阅读 · 0 评论 -
23种设计模式——Decorator模式
一、功能:我们通常可以使用继承来实现功能的拓展,如果这些需要拓展的功能的种类很繁多,那么势必生成很多子类,增加系统的复杂性,同时,使用继承实现功能拓展,我们必须可预见这些拓展功能,这些功能是编译时就确定了,是静态的.使用Decorator的理由是:这些功能需要由用户动态决转载 2011-09-21 17:42:46 · 524 阅读 · 0 评论 -
23种设计模式——Adapter模式
一、功能将一个类的接口转换成客户希望的另外一个接口,解决两个已有接口之间不匹配的问题。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。实际上在软件系统设计和开发中,这种问题也会经常遇到:我们为了完成某项工作购买了一个第三方的库来加快开发。这就带转载 2011-09-21 12:38:18 · 615 阅读 · 0 评论 -
23种设计模式——Prototype模式
Prototype模式是提供自我复制的功能。包括浅拷贝和深拷贝。一、Prototype模式的用途场景1:游戏场景中有很多类似的敌人,它们的技能都一样,但是随着敌人出现的位置和不同,它们的能力也不太一样。那么,可以创建一个敌人抽象类,然后对于不同能力的步兵创建不同的子类。然转载 2011-09-20 11:59:09 · 805 阅读 · 0 评论 -
23种设计模式——Builder模式
一、概述在软件系统中,有时候面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法确相对稳定。如何应对这种变化?如何提供一种“封装机制”来隔离出“复杂对象的各个部分”的转载 2011-09-19 17:58:58 · 960 阅读 · 0 评论 -
23种设计模式——Bridge模式
Bridge模式:指的是将一事件的抽象与行为分开来,也就是说使对象的属性与方法之间耦合度降低.使用Bridge模式的好处:当给对象增加新的属性时只需要继承这个对象的抽象属性接口就行了,当给对象增加新的方法时只需要继承这个对象的抽象方法接口就OK了。这样就使用一个对象的属性与方转载 2011-09-21 11:37:18 · 689 阅读 · 0 评论 -
23种设计模式——Singleton模式
Singleton模式就是单例模式:在一个系统中要求一个类只能有一个实例使用单例模式。特点上:1. 单例类只能有一个实例2. 单例类必须自己创建自己的唯一实例3. 单一类必须给所有其他对象提供这一实例 单例模式的应用原创 2011-09-19 17:52:25 · 437 阅读 · 0 评论 -
Android源码下常用的Builder模式
/* * Copyright (C) 2007 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * Yo转载 2017-06-08 12:47:22 · 373 阅读 · 0 评论