Chatper 11 字节码 通过将行为编码成虚拟机指令,而使其具备数据的灵活性。 解释器模式(慢): 1 class Expression 2 { 3 4 public: 5 virtual ~Expression() {} 6 virtual double evaluate() = 0; 7 8 ...
分类:
其他好文 时间:
2017-01-10 17:23:20
阅读次数:
184
Chatper 8 双缓冲 核心问题:对状态同时进行修改与访问的冲突(读写) 缓冲区: 1 class Framebuffer 2 { 3 4 public: 5 Framebuffer() { clear(); } 6 7 void clear() 8 { 9 for (int i = 0; i ...
分类:
其他好文 时间:
2017-01-09 20:29:11
阅读次数:
310
模板方法模式由两个角色组成:父类角色,子类角色。 父类角色:提供模板。 子类角色:为父类模板提供实现。 类图: JAVA代码: AbstractClass.java ConcreteClass.java Test.java 总结:模板方法模式,定义一个操作中的算法骨架,而将一些步骤延迟到子类中去实现 ...
分类:
其他好文 时间:
2016-12-29 06:53:21
阅读次数:
177
各位,上一篇基本概念和架构中,我们介绍了Window Azure ServiceBus的消息队列技术的概览。接下来,我们进入编程模式和详细功能介绍模式,一点一点把ServiceBus技术研究出来。 本章我们主要介绍ServiceBus的编程SDK编程入门。 首先,微软提供了两个主要的Nuget Pa ...
ASP.NET 是一个开发框架,用于通过 HTML、CSS、JavaScript 以及服务器脚本来构建网页和网站。 ASP.NET 支持三种开发模式: Web Pages、MVC (Model View Controller) 以及 Web Forms MVC 是三种 ASP.NET 编程模式中的一 ...
分类:
Web程序 时间:
2016-12-27 11:42:04
阅读次数:
236
定义:可以动态地添加修改类的功能解析:一个类提供了一项功能,如果要在修改并添加额外的功能,传统的编程模式,需要写一个子类继承它,并重新实现类的方法。使用装饰器模式,仅需在运行时添加一个装饰器对象即可实现,可以实现最大的灵活性。$canvas1 = new IMooc\Canvas();$canvas... ...
分类:
其他好文 时间:
2016-12-24 22:53:01
阅读次数:
218
定义:在不需要了解内部实现的前提下,遍历一个聚合对象的内部元素好处:相比于传统的编程模式,迭代器模式可以隐藏遍历元素的所需的操作$users = new \IMooc\AllUser();foreach ($users as $user){ var_dump($user);}connect('127... ...
分类:
其他好文 时间:
2016-12-24 22:41:36
阅读次数:
184
观察者模式由四个角色组成:抽象主题角色,抽象观察者角色,具体主题角色,抽象观察者角色,具体观察者角色。 抽象主题角色(Subject):把所有的观察者角色的引用保存在一个集合中,可以有任意数量的观察者。其提供一个接口,可以添加、删除观察者,并可以向登记过的观察者发送通知。 具体主题角色(Observ ...
分类:
其他好文 时间:
2016-12-23 22:58:11
阅读次数:
269
第二遍读了,第一遍在网上啃了英文版,出了中文版的买了一本。记一些自己觉得有价值的东西吧。 Chapter One 衡量一个设计好坏的方法就是看它应对变化的灵活性。 从理论上讲,解耦意味着在你进行扩展时仅需理解少量代码,然而抽象却增加了理解代码的难度。 如果你只是想验证游戏想法,那么对其精心设计架构意 ...
分类:
其他好文 时间:
2016-12-17 17:04:25
阅读次数:
138
前言 很多初学者其实对Spark的编程模式还是RDD这个概念理解不到位,就会产生一些误解。 比如,很多时候我们常常以为一个文件是会被完整读入到内存,然后做各种变换,这很可能是受两个概念的误导: 如果你没有主动对RDDCache/Persist,它不过是一个概念上存在的虚拟数据集,你实际上是看不到这个 ...
分类:
其他好文 时间:
2016-12-09 08:01:25
阅读次数:
139