• 等级
  • 341 访问
  • 19 原创
  • 0 转发
  • 940294 排名
  • 0 评论
  • 1 获赞

Android中的设计模式之观察者模式

参考 《设计模式:可复用面向对象软件的基础 》5.7 Observer 观察者 对象行为型模式 《设计模式解析》 18.4 Observer模式 《Android源码设计模式解析与实战》第12章 解决,解耦的钥匙–观察者模式 本人能力有限,如有明显错误,不规范的地方,请指正,谢谢。 意图 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自...

2018-08-29 11:21:32

Android中的设计模式之命令模式

参考 《设计模式:可复用面向对象软件的基础 》5.2 Command 命令 对象行为型模式 《Android源码设计模式解析与实战》第11章 让程序畅通执行–命令模式 意图 将一个请求封装为一个对象,从而使你可用不同地请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销地操作。 适用场景 需要抽象出待执行地动作,然后以参数地形式提供出来,类似于过程设计中的回调机制...

2018-08-20 23:56:56

Android中的设计模式之解释器模式

参考 《设计模式:可复用面向对象软件的基础 》5.3 Interpreter 解释器 类行为型模式 《Android源码设计模式解析与实战》第10章 化繁为简的翻译机–解释器模式 意图 给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器适用该表示来解释语言中的句子。 适用场景 当有一个语言需要解释执行,并且你可将该语言中的句子表示为一个抽象语法树时,可使用解释...

2018-08-19 23:56:40

Android中的设计模式之责任链模式

参考 《设计模式:可复用面向对象软件的基础 》5.1 Chain of responsibility 职责链 对象行为型模式 《Android源码设计模式解析与实战》第9章 使编程更有灵活性–责任链模式 意图 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 适用场景 有多个的...

2018-08-19 10:45:24

Android中的设计模式之状态模式

参考 《设计模式:可复用面向对象软件的基础 》5.8 State 状态 对象行为型模式 《Android源码设计模式解析与实战》第7章 随遇而安–状态模式 意图 允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。 别名 状态对象(Objects for States) 适用场景 一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的...

2018-08-15 23:38:54

Android中的设计模式之抽象工厂模式

参考 《设计模式解析》 第十一章 Abstract Factory模式 《设计模式:可复用面向对象软件的基础 》3.1 Abstract Factory 抽象工厂 对象创建型模式 《Android源码设计模式解析与实战》第6章 创建型设计模式–抽象工厂模式 意图 协调对象的实例化,提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 我觉得就是在工厂方法模式里的工厂...

2018-08-14 23:54:51

Android中的设计模式之工厂方法模式

参考 《设计模式:可复用面向对象软件的基础 》3.3 Factory method 对象创建型模式 《Android源码设计模式解析与实战》第5章 应用最广泛的模式–工厂方法模式 意图 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类 别名 虚构造器 适用性 当一个类不知道它所必须创建的对象的类的时候 当...

2018-08-14 00:35:22

Android中的设计模式之原型模式

参考 《设计模式:可复用面向对象软件的基础 》3.4 prototype 原型–对象创建型模式 《Android源码设计模式解析与实战》第4章 使程序运行更高效 原型模式 意图 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象 使用场景 类初始化需要消化非常多的资源,这个资源包括数据,硬件资源等,通过原型拷贝避免这些消耗。 通过new产生一个对象需要非常繁琐的...

2018-08-11 23:11:13

Android中的设计模式之代理模式

参考 《设计模式:可复用面向对象软件的基础 》4.7 Proxy 代理–对象结构型模式 《Android源码设计模式解析与实战》第18章 编程好帮手–代理模式 意图 为其它对象提供一种代理以控制对这个对象的访问 适用性 在需要用比较通用和复杂的对象指针代替简单的指针的时候,使用Proxy模式。 - 远程代理 为一个对象在不同的地址空间提供局部代表。这一点Android Bi...

2018-08-09 22:55:52

Android中的设计模式之构建者模式

参考 《设计模式:可复用面向对象软件的基础 》3.2 Builder 生成器–对象创建型模式 《Android源码设计模式解析与实战》第3章 Builder模式 意图 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 适用性 相同的方法,不同的执行顺序,产生不同的事件结果时。 多个部件或零件,都可以装配到一个对象中,但是产生的运行结果又不相同时。 ...

2018-08-09 00:03:16

Android中的设计模式之单例模式

参考 《设计模式:可复用面向对象软件的基础 》3.5 Singleton 单件–对象创建型模式 《设计模式解析》(第二版)第21章 Singleton模式和Double-Checked Locking模式 《Android源码设计模式解析与实战》第2章 单例模式 意图 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 动机 对一些类来说,只有一个类实例是很重要的,比如一...

2018-08-07 23:40:11

Android中的设计模式之策略模式

参考 《设计模式:可复用面向对象软件的基础 》5.9 Strategy–对象行为型模式 《设计模式解析》(第二版)第九章 Strategy模式 《Android源码设计模式解析与实战》第七章策略模式 处理新需求的一种途径 灾难往往是由短期未甄选最优的决策,长期积累而引起的 在软件开发中也是如此,只关心眼前的事情,而忽视长期问题 原因: 我们确实无法预测新需求将如何变化 如果要把...

2018-08-07 22:31:01

Kotlin 31 Days

Day1 可见性 参考 31 天,从浅到深轻松学习 Kotlin Kotlin实战 在 Kotlin 中一切都是默认 public 的。在Kotlin中,存在private、protected、internal和 public四种修饰符,它们可用于修饰类、对象、接口、构造器、函数、属性、以及属性的设值方法等。 // 默认public val isVisible = true //...

2018-07-01 10:55:58

《软技能》读书笔记(下)

外行静坐等待灵感,其他人则唤起激情努力工作 — 斯蒂芬.金《写作这回事:创作生涯回忆录》 第四章 生产力 第三十六章 一切始于专注 第三十七章 我的私房“生产力提升计划” 第三十八章 番茄工作法 第三十九章 我的“定额工作法”:我是如何做到超额完成工作的 第四十...

2018-05-23 10:30:45

一位android开发程序猿的小工具集合

工欲善其事,必先利其器 以下是我开发中或生活中用的个人觉得比较好的工具软件,一款好用的工具,往往能事半功倍 PostMan(ChromeApp) 一个可以模拟实现HTTP get和post的请求工具,方面设置请求参数和查看响应结果。可在Chrome应用商店搜索下载,目前已经出了PC版,界面美观,功能强大,良心工具 马克飞象(ChromeApp) 我试用过...

2018-04-24 22:32:49

《Effective Java》学习笔记 第二章 创建和销毁对象

第二章 创建和销毁对象 何时以及如何创建对象,何时以及如何避免创建对象,如何确保他们能够适时地销毁,以及如何管理对象销毁之前必须进行的各种清理动作。 1 考虑用静态工厂方法代替构造器 一般在某处获取一个类的实例最常用的方法是提供一个共有的构造器,还有一种方法,就是提供一个共有的静态工厂(static factory method),他只是一个返回类的实例的静态方法。 ...

2018-04-16 17:19:46

算法初级笔记(一)认识时间复杂度

声明:本笔记所涉及的资料来源于牛客网 认识时间复杂度 常数时间的操作:一个操作如果和数据量没有关系,每次都是固定时间内完成的操作,叫做常数操作。我的理解是这种操作最终的执行就是执行汇编命令,而汇编命令执行花费的时间都是有限的机器时钟时间,可以简单理解为执行一个相加指令,所以常数操作花费的时间是确定有限的,和数量级没关系。 时间复杂度为一个算法流程中,常数操作数量的指标,常用O(读...

2018-04-08 23:24:07

华文慕课Java程序设计笔记

对象的自动清除 对象回收是由垃圾回收线程负责 System.gc()方法可以要求系统进行垃圾回收,仅仅是建议系统 java没有“析构方法”,但Object的finalize()有类似方法 系统在回收时会自动调用对象的finalize()方法 protected void finalize() throws Throwable{} 子类的finalize方法可以在里面释放系统资源,一般...

2018-04-04 23:47:07

《软技能》读书笔记(上)

前言 这是一本真正从“人”(而非技术也非管理)的角度关注软件开发人员自身发展的书。书中论述的内容既涉及生活习惯,又包括思维方式,凸显技术中“人”的因素,全面讲解软件行业从业人员所需知道的所有“软技能”。本书聚焦于软件开发人员生活的方方面面,从揭秘面试的流程到精耕细作出一份杀手级简历,从创建大受欢迎的博客到打造你,从提高自己工作效率到与如何与“拖延症”做斗争,甚至包括如何投资不动产,...

2018-04-04 23:41:29

newtrekWang

个人网站: http://newtrekwang .me ...展开 收起
关注
  • 中国 重庆 渝北区
奖章
  • 专栏达人
  • 粉丝 1
  • 关注 0

    空空如也