`
切切歆语
  • 浏览: 30217 次
  • 性别: Icon_minigender_1
  • 来自: 泸州市
社区版块
存档分类
最新评论

Android之设计模式

 
阅读更多

设计模式的概念

1.基本定义:设计模式(Design pattern)是一套被反复使用的代码设计经验的总结。使用设计模式的目的是为了可重用代码、让代码更容易被他人理解。设计模式是是软件工程的基石脉络,如大厦的结构一样。

2.Design pattern的四大要素:模式名称(Name),问题(Question),解决方案(Solution),效果(Efftive)。

3.OO(面向对象)的六大原则:单一职责原则,开闭原则,里氏替换原则,依赖倒置原则,接口隔离原则,迪米特原则。

设计模式的分类

总体来说23种设计模式可分为三大类:

创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

一、创建型模式

  • 抽象工厂模式: 提供一个接口, 用于创建相关或依赖对象的家族, 而不需要指定具体类.
  • 建造者模式: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示 .
  • 工厂模式: 定义了一个创建对象的接口, 但由子类决定要实例化的类是哪一个. 工厂方法让类把实例化推迟到子类.
  • 原型模式: 当创建给定类的实例过程很昂贵或很复杂时, 就使用原形模式.
  • 单例模式: 确保一个类只有一个实例, 并提供全局访问点.


二、结构型模式

  • 适配器模式: 将一个类的接口, 转换成客户期望的另一个接口. 适配器让原本接口不兼容的类可以合作无间. 对象适配器使用组合, 类适配器使用多重继承.
  • 桥接模式: 使用桥接模式通过将实现和抽象放在两个不同的类层次中而使它们可以独立改变.
  • 组合模式: 允许你将对象组合成树形结构来表现"整体/部分"层次结构. 组合能让客户以一致的方式处理个别对象以及对象组合.
  • 装饰者模式: 动态地将责任附加到对象上, 若要扩展功能, 装饰者提供了比继承更有弹性的替代方案.
  • 外观模式: 提供了一个统一的接口, 用来访问子系统中的一群接口. 外观定义了一个高层接口, 让子系统更容易使用.
  • 亨元模式: 如想让某个类的一个实例能用来提供许多"虚拟实例", 就使用蝇量模式.
  • 代理模式: 为另一个对象提供一个替身或占位符以控制对这个对象的访问.


三、行为型模式

  • 责任链模式: 通过责任链模式, 你可以为某个请求创建一个对象链. 每个对象依序检查此请求并对其进行处理或者将它传给链中的下一个对象.
  • 命令模式: 将"请求"封闭成对象, 以便使用不同的请求,队列或者日志来参数化其他对象. 命令模式也支持可撤销的操作.
  • 解释器模式: 使用解释器模式为语言创建解释器.
  • 迭代器模式: 提供一种方法顺序访问一个聚合对象中的各个元素, 而又不暴露其内部的表示.
  • 中介者模式: 使用中介者模式来集中相关对象之间复杂的沟通和控制方式.
  • 备忘录模式: 当你需要让对象返回之前的状态时(例如, 你的用户请求"撤销"), 你使用备忘录模式.
  • 观察者模式: 在对象之间定义一对多的依赖, 这样一来, 当一个对象改变状态, 依赖它的对象都会收到通知, 并自动更新.
  • 状态模式: 允许对象在内部状态改变时改变它的行为, 对象看起来好象改了它的类.
  • 策略模式: 定义了算法族, 分别封闭起来, 让它们之间可以互相替换, 此模式让算法的变化独立于使用算法的客户.
  • 模板方法模式: 在一个方法中定义一个算法的骨架, 而将一些步骤延迟到子类中. 模板方法使得子类可以在不改变算法结构的情况下, 重新定义算法中的某些步骤.
  • 访问者模式: 当你想要为一个对象的组合增加新的能力, 且封装并不重要时, 就使用访问者模式.

六大设计原则

单一职责原则:一个类中应该是一组相关性很高的函数,数据的封装。两个完全不一样的功能就不应该放在一个类中。

开闭原则:对修改封闭,对扩展放开。

里氏替换原则:抽象和继承;所有引用基类的地方必须能透明的使用其子类的对象。

依赖倒置原则:抽象不应该依赖细节,细节应该依赖抽象。

接口隔离原则:将大接口改成多个小接口。

迪米特原则:也称为最少知识原则,一个对象应该对另一个对象有最少的了解。

分享到:
评论

相关推荐

    Android源码设计模式解析与实战.pdf

    《Android 源码设计模式解析与实战》不仅分析了Android源代码的设计模式,更结合实例演示了如何使用这些设计模式。看这本书,既能学到如何分析、学习Android源代码,又能提高自己架构设计水平 《Android 源码设计...

    Android源码设计模式解析与实战.PDF(完整版)

    ### Android设计模式概述 #### 设计模式定义 设计模式是软件工程领域的一个重要概念,它代表着在特定场景下解决常见问题的有效方法。对于Android开发者而言,了解并掌握这些设计模式能够帮助他们编写更加高效、可...

    Android源码设计模式解析与实战(高清扫描完整版).pdf

    这是一本写给Android开发者的讲设计模式分析的书,同时,这还是一本写给Android开发者讲源代码分析的书,看这一本书,不仅仅可以学到如何运用这些设计模式,更能够了解这些设计模式在Android源代码中的实现,从而...

    android常用设计模式

    Android 设计模式详解 Android 设计模式是 software engineering 问题的解决方案,分为三类:创建型模式、结构型模式和行为型模式。创建型模式与对象的创建有关,结构型模式处理类与对象的组合,行为型模式对类或...

    android源码设计模式解析与实战.pdf下载 完整版高清

    本书从Android源码的角度由浅入深地剖析设计模式的运用,让工程师们把设计与模式重视起来,提升自己的设计能力与代码质量。因此本书适合的读者为初、中、高级Android工程师。另外,设计思想都是相通的,其他领域的...

    Android源码设计模式

    在Android系统中,设计模式是开发者理解和驾驭代码的关键。这些模式源自《设计模式:可复用面向对象软件的基础》一书,由“Gang of Four”(GoF)提出,被广泛应用于各种软件开发中,尤其是在Android框架内。本文将...

    Android源码设计模式解析与实战

    Android源码设计模式解析与实战 Android源码设计模式解析与实战 Android源码设计模式解析与实战 Android源码设计模式解析与实战 Android源码设计模式解析与实战 Android源码设计模式解析与实战 Android源码设计模式...

    Android源码设计模式解析与实战 pdf 完整版

    总的来说,《Android源码设计模式解析与实战》是一本深入浅出的Android设计模式教程,对于希望提升Android开发技能的工程师来说,是一份不可多得的学习资料。通过对书中的知识点进行深入学习和实践,开发者将能更好...

    android设计模式之原型模式

    本文将深入探讨Android设计模式中的“原型模式”(Prototype Pattern),并结合提供的"prototype"压缩包中的示例代码进行解析。 原型模式是一种创建型设计模式,它的主要思想是通过复制已有对象来创建新对象,而...

    Android设计模式(详细讲解了10个Android设计模式)

    详细讲解了组合模式、观察者模式、单例模式、模板方法模式、备忘录模式、享元模式、命令模式、工厂方法模式、适配器模式 原型模式等10个Android设计模式,和CSDN上其他讲Android设计模式的文章完全不同。讲解详细,...

    Android 源码设计模式解析与实战 _第二部分

    由于本书为高清版,文件较大,特压缩成3个压缩文件包,方便上传与下载,请各位见谅...Android 源码设计模式解析与实战 _第一部分 Android 源码设计模式解析与实战 _第二部分 Android 源码设计模式解析与实战 _第三部分

    Android源码设计模式解析与实战.rar

    在Android开发领域,深入理解源码中的设计模式是提升技能水平的关键步骤。"Android源码设计模式解析与实战"这份资料旨在帮助开发者更好地理解和运用这些模式。设计模式是软件工程中经过验证的解决常见问题的最佳实践...

    android 源码设计模式

    在Android开发领域,深入理解源码中的设计模式是提升技能水平的关键步骤。设计模式是解决软件设计中常见问题的经验总结,它们是经过实践验证的、可重用的解决方案。在这个"android 源码设计模式"主题中,我们将探讨...

    android框架设计模式和设计原则

    在Android开发领域,深入理解框架设计模式和设计原则是提升专业技能的关键步骤。设计模式是软件工程中的经验总结,它们是解决常见问题的有效方案。设计原则则是指导我们编写高质量、可维护代码的准则。以下是对这些...

    android之大话设计模式整理.pdf

    android之大话设计模式整理.pdf

    Android源码设计模式解析与实战 pdf高清版

    《Android源码设计模式解析与实战》是一本深入探讨Android系统源码中设计模式应用的专业书籍,适合希望提升技术能力、研究源码或学习设计模式的开发者。这本书以清晰的结构和实例,揭示了Android系统背后的软件工程...

Global site tag (gtag.js) - Google Analytics