工厂模式
摘要:【简单工厂模式】 简单工厂模式也叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。 1、优点。 通过使用工厂类,外界可以从直接创建具体产品对象的尴尬局面摆脱出来,仅仅需要负责“消费”对象就可以了。而不必管这些对象究竟如何创建及如何组织的.明确了各自
阅读全文
重构
摘要:【重构】 1、什么是重构? 所谓 重构( refactoring) 是 这样 一个 过程: 在不改变代码外在行为的前提下, 对代码做出修改, 以改进程序的内部结构。 2、几种基础重构手法: 1)把某个字段,从一个类移至另 一个类。 2)把某些代码提取成一个函数。 Extract Method. 3)
阅读全文
MVVM
摘要:【MVVM】 MVC: MVVM: 链接: 1、https://objccn.io/issue-13-1/ 2、https://www.objc.io/issues/13-architecture/mvvm/
阅读全文
游戏编程模式KeyNote
摘要:【游戏编程模式KeyNote】 1、命令模式。 重做在游戏中并不常见,但重放常见。一种简单的重放实现是记录游戏每帧的状态,这样它可以回放,但那会消耗太多的内存。相反,很多游戏记录每个实体每帧运行的命令。为了重放游戏,引擎只需要正常运行游戏,执行之前存储的命令。 2、并发状态机。 我们决定给英雄拿枪的
阅读全文
架构、性能和游戏
摘要:【架构、性能和游戏】 什么是好的软件架构? 好的设计意味着当我作出改动,整个程序就好像正等着这种改动。我可以加使,用几个函数调用完成任务,而代码库本身无需改动。 你如何处理改动? 在你改动代码去添加新特性,去修复漏洞,或者随便什么需要使用文本编辑器的时候,你需要理解代码正在做什么。当然,你不需要理解
阅读全文
Mediator模式
摘要:【Mediator模式】 通过mediator来让各个相互通知的对象解耦。在iOS框架中就是NSNotificationCenter。 参考:http://www.jdon.com/designpatterns/mediator.htm
阅读全文
Wrapper模式(Decorator模式)
摘要:【Wrapper模式(Decorator模式)】装饰者模式 Decorator模式(别名Wrapper):动态将职责附加到对象上,若要扩展功能,装饰者提供了比继承更具弹性的代替方案。意图: 动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。设计原则: 1. 多用组合,少用继承。 利用继承设计子类的行为,是在编译时静态决定的,而且所有的子类都会继承到相同的行为。然而,如果能够利用组合的做法扩展对象的行为,就可以在运行时动态地进行扩展。 2. 类应设计的对扩展开放,对修改关闭。 要点: 1. 装饰者和被装饰对象有相同的超类型。 2. ...
阅读全文
装饰者模式vs适配器模式
摘要:[装饰者模式vs适配器模式] 1.关于新职责:适配器也可以在转换时增加新的职责,但主要目的不在此。装饰者模式主要是给被装饰者增加新职责的。 2.关于原接口:适配器模式是用新接口来调用原接口,原接口对新系统是不可见或者说不可用的。装饰者模式原封不动的使用原接口,系统对装饰的对象也通过原接口来完成使用。(增加新接口的装饰者模式可以认为是其变种--“半透明”装饰者) 3.关于其包裹的对象:适配器是知道被适配者的详细情况的(就是那个类或那个接口)。装饰者只知道其接口是什么,至于其具体类型(是基类还是其他派生类)只有在运行期间才知道。
阅读全文
Prototype模式
摘要:【ProtoType原理】 Prototype模式(原型模式)的基本原理是我们想利用已有的对象,复制大量同类的对象。在C++中,利用拷贝构造函数是实现复制对象的最好方法。 Prototype模式的实现方法是在基类中定义一个Clone的虚函数,然后在派生类中改写该虚函数,并在派生类的Clone函数中调用该类的拷贝构造函数,每调用一次,就生成了一个拷贝的对象。参考:http://blog.csdn.net/qingfeng_happy5/article/details/4310184
阅读全文
敏捷开发宣言
摘要:【敏捷开发宣言】1、个体和交互胜过过程和工具2、可工作的软件胜过面面俱到的文档3、客户协助胜过合同谈判4、响应变化胜过遵循计划核心:团队合作、可工作的软件、快速响应变化【敏捷修炼之道】 敏捷开发就是在一个高度协作的环境中,不断地使用反馈进行自我调整和完善【态度决定一切】 敏捷依赖人,而不是依赖于项目中的甘特图和里程表. 图表、集成开发环境或者设计工具,它们本身都无法产生软件,软件是从你的大脑中产生的.而且它不是孤立的大脑活动,还会有许多其他方面的因素:个人情绪、办公室的文化、自我主义、记忆力等.它们混为一体,态度和心情的瞬息变化都可能导致巨大的差别.【指责不能修复BUG】 世上最糟糕的...
阅读全文