美文网首页
设计模式

设计模式

作者: windfall_ | 来源:发表于2016-11-29 21:53 被阅读0次

    面向对象六大原则

    • 单一职责原则:一个类中应该是一组相关性很高的函数、数据的封装。
    • 开闭原则:对修改关闭,对拓展关闭。
    • 里氏替换原则:所有引用基类的地方必须能透明得使用其子类的对象。即子类就可以替换父类出现。
    • 依赖倒置原则:依赖高层抽象,不能依赖底层实现。
    • 接口隔离原则:将接口拆分成更具体的接口,根据不同需求建立依赖。
    • 迪米特原则:即最小知识原则。一个类应该与和它关系最直接的类建立连接。

    设计模式在Android源码中的实现

    • 单例模式
      最优实现:静态内部类方式、枚举方式、容器方式

      源码:Context.getSystemSerivce()采用了容器方式实现单例模式将service通过键值对的方式存在HashMap中。

    • Builder模式

      将一个复杂的对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。

      源码:AlertDialog、OkHttp

    • 原型模式

      clone()

    源码:ArrayList

    • 工厂方法模式

    源码:Iterable

    • 抽象工厂

    • 策略模式:

    源码:属性动画插值器

    • 状态模式:

    源码:WiFiSetting

    • 责任链模式:

    源码:view事件分发

    • 解释器模式:

    源码:PackageManagerService(app扫描)

    • 命令模式:

    源码:InputDispatcher事件输入

    • 观察者模式:

    源码:notifyDataSetChange、Rxjava

    • 备忘录模式:

    源码:onSaveInstanceState

    • 迭代器模式:

    源码:List、Map、Curso

    • 模板方法模式:

    源码:AsyncTask

    • 访问者模式:

    源码:APT(注解)

    • 中介者模式:

    源码:Keyguard锁屏

    • 代理模式:

    源码:Binder

    • 组合模式:

    源码:View、ViewGroup

    • 适配器模式:

    源码:Adapter

    • 装饰器模式:

    源码:ContextWrapper

    • 享元模式:

    源码:Message

    • 外观模式:

    源码:context、ContextImpl

    • 桥接模式:

    源码:WindowManagerService

    相关文章

      网友评论

          本文标题:设计模式

          本文链接:https://www.haomeiwen.com/subject/mkjzpttx.html