随笔分类 -  IOS之实战积累--设计模式

摘要:前言:23种软件设计模式中的观察者模式,也是在软件开发中,挺常用的一种设计模式。而在苹果开发中,苹果Cocoa框架已经给我们实现了这个设 计模式,那就是通知和KVO(Key-Value Observing),本篇博文将会先讲解通知和KVO的常用方法和使用示例,然后讲解观察者模式以及对观察者模式的实现 阅读全文
posted @ 2016-03-11 14:56 何杨 阅读(6989) 评论(0) 推荐(2) 编辑
摘要:前言:本篇博文将让你学会软件开发中的"何为树形结构"、"何为组合模式"、"组合模式可以解决的问题"等相关知识。 内容大纲: 1、树形结构 2、组合模式 3、编写文件夹系统 1、树形结构(大神或者计算机基础很好的可以跳过,不过这后面通过用面向对象的代码实现的树形结构,值得一阅) 在介绍组合设计模式之前 阅读全文
posted @ 2016-02-28 23:41 何杨 阅读(2851) 评论(0) 推荐(0) 编辑
摘要:内容大纲 如何存储记录 备忘录模式的基本原理 使用备忘录模式 优化存储方案 恢复UIView的状态 1、如何存储记录 在存储记录时,第一步我们需要用一把钥匙去打开一把锁。第二步,当我们打开锁之后就会有黑盒子,我们一开始还不知道里面有什么,所以是黑盒子。 1、存储记录的必要性 生活中,比如去超市购物有 阅读全文
posted @ 2015-12-12 17:19 何杨 阅读(1856) 评论(4) 推荐(1) 编辑
摘要:前言:命令对象封装了如何对目标执行指令的信息,因此客户端或调用者不必了解目标的任何细节,却仍可以对他执行任何已有的操作。通过把请求封装成对象,客 户端可 以把它参数化并置入队列或日志中,也能够支持可撤销操作。命令对象将一个或多个动作绑定到特定的接收器。命令模式消除了作为对象的动作和执行它的接收器之 ... 阅读全文
posted @ 2015-12-11 00:05 何杨 阅读(3019) 评论(1) 推荐(0) 编辑
摘要:IOS设计模式单例类 Made By HeYang 内容大纲: 1、单例模式 2、编写严格的单例 3、利用单例模式优化本地存储 4、重写allocWithZone实现单例 5、使用异常处理强制避免init创建实例 6、MRC下的单例模式,然后宏定义抽取单例类(兼顾ARC和MRC) 7、附录 1.单例 阅读全文
posted @ 2015-10-29 14:38 何杨 阅读(903) 评论(3) 推荐(0) 编辑
摘要:抽象工厂的灵活性要比简单工程的灵活性强。 抽象工厂的UML图(第一次画UML图,可能关系和箭头的图意义有错误,但是请不要以建模规范去看图,以最基本的结合后面OC代码,理解相关关系): 抽象工厂原理:抽象工厂 较 简单工厂 多了抽象级别 而已。因为需要创建抽象工厂,所以需要工厂管理器:新建Factor 阅读全文
posted @ 2015-10-29 00:02 何杨 阅读(300) 评论(0) 推荐(0) 编辑
摘要:为什么 “简单工厂原理” 叫简单工厂,因为这个工厂类不是抽象类,而是实体类,工厂本身就是一个具体的对象。 写一个例子演示简单工厂模式:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>协议的用法,小何子总结:一个类如果 阅读全文
posted @ 2015-10-28 01:23 何杨 阅读(347) 评论(0) 推荐(0) 编辑
摘要:备注:只能通过类的类方法才能创建单例类的实例,[[类名 alloc]init]创建实例没有用的。原理图说明1. 单例模式人人用过,严格的单例模式很少有人用过2. 严格的单例模式指的是无法通过常规的 alloc init 方法来生成对象,派生出来的子类也不能产生出对象,而只能通过单例的方法获取到对象源... 阅读全文
posted @ 2015-08-28 12:07 何杨 阅读(219) 评论(0) 推荐(0) 编辑
摘要:开闭原则: 一个模块的修改,对拓展开放而对修改关闭。 举个例子:有一个类在项目中很多地方被使用了,但是由于需求,想对这个类进行拓展,这里可以使用继承拓展出子类,可以对子类进行修改,尽量不要修改原来的类。 里氏代换原则: 子类父类可以替换,子类可以使用父类所有的方法,父类可以使用子类所有的方法。 举个 阅读全文
posted @ 2015-08-07 13:45 何杨 阅读(260) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示