论23种设计模式在Android源码中的应用--概述篇

前言

当你求职面试的时候是否有这样当经历,面试官问你:

你在项目使用过的设计模式有哪些?

说说xx模式在你项目中的使用?

说说xx模式的实现原理是什么?

说说xx模式在Android源码中的体现?

等等,诸如此类的问题,你是否都能一一答出呢?如果你没有答好说明你对设计模式可能理解还不够深刻,或者使用还不够熟练
,如果是这样的话,让我们一起共同学习一下设计模式吧,在准备写一些关于设计模式的文章时也参考了一些网上的讲解,写得都很不错,有些只介绍理论,有些理论+实例,但是总让人很难记住和掌握,过2、3个月估计忘光光,所以呢,我打算站在巨人们的肩膀上再加23种设计模式在Android源码中运用方便大家掌握和理解,也会加入我在多年工作中对设计模式的一些理解,如果有什么不对的地方欢迎留言指正,谢谢.

概念

设计模式(Design Pattern)是一套被反复使用、大多数人知晓的、经过分类的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被人理解、保证代码的可靠性和可维护性;

论如何学习设计模式

想要耐心的去学习并了解这些设计模式并不是一件简单容易的事,但是如果通过我们平时用的Android中的列子来记忆是不是会更容易理解呢,不管怎么说我们先记住每一种设计模式的大概原型,然后在项目中尝试使用,这样才能慢慢融会贯通,在我工作过程中总结了一下学习设计模式的比较好的方式:

设计模式学习模式

分类

23种设计模式从功能用途上可以分成三类:

  • 创建型设计模式
  1.单列模式(Singleton Pattern)
  2.工厂方法模式(Factory Method Pattern)
  3.抽象工厂模式(Abstract Factory Pattern)
  4.Builder模式(Builder Pattern)
  5.原型模式(Prototype Pattern)
  • 行为型设计模式
   1.中介者模式(Mediator Pattern)
   2.迭代器模式(Iterator Pattern)
   3.解释器模式(Interpreter Pattern)
   4.命令模式(Command Pattern)
   5.责任链模式(Chain of Responsibility Pattern)
   6.备忘录模式(Memento Pattern)
   7.状态模式(State Pattern)
   8.观察者模式(Observer Pattern)
   9.策略模式(Strategy Pattern)
   10.访问者模式(Vistor Pattern)
   11.模板模式(Template Method Pattern)
  • 结构型设计模式
   1.组合模式(Composite Pattern)
   2.桥接模式(Bridge Pattern)
   3.适配器模式(Adapter Pattern)
   4.装饰模式(Decorator Pattern)
   5.外观模式(Facade Pattern)
   6.享元模式(Flyweight Pattern)
   7.代理模式(Proxy Pattern)

创建型模式主要用于对象的创建根据不同的创建形式而设计常用方式;

行为型模式主要用于行为职责和行为交互的一类设计模式;

结构模式主要用于对象结构等组合整理;

网上找了一张图很好的概括了23种设计模式之间的关系:

image

综述

23中设计模式会分别用23个章节来分析,每一个章节都会从以下几个方面进行分享:

概念

模式设计图

Android源码分析

结合实例进行实战练习

设计模式的最好学习方法是实践,从项目中不断的总结–优化–总结,这样才能不断的提升对设计模式的融会贯通;

再遇到面试官问上面的问题时,我相信你肯定能答好上面的问题,至少比80%竞争对手答得好;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值