上一页 1 2 3 4 5 6 ··· 9 下一页
摘要: 前言 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 当你需要从A的实例得到一份与A内容相同,但是又互不干扰的实例的话,就需要使用原型模式。 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。这个其实和C++的拷贝构造函数的作用是相似的(但不相同),实际上就是动态抽取 阅读全文
posted @ 2019-03-05 15:01 二狗啸地 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 以建造小人为例子,一共需建造6个部分,头部、身体、左右手、左右脚。与工厂模式不同,建造者模式是在导向者的控制下一步一步构造产品的。建造小人就是在控制下一步步构造出来的。创建者模式可以能更精细的控制构建过程,从而能更精细的控制 阅读全文
posted @ 2019-03-05 11:25 二狗啸地 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 工厂模式分为三类:简单工厂模式、工厂方法模式、抽象工厂模式。 简单工厂模式 特点是需要在工厂类中做判断,从而创造相应的产品。当增加新的产品时,就需要修改工厂类。 比如一家生产肥皂的工厂,它只有一家工厂,能够生产两种形状的白色肥皂,客户需要什么形状的,需要显示告诉工厂。 UML 工厂方法模式 简单工厂 阅读全文
posted @ 2019-03-05 10:37 二狗啸地 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 定义 适配器模式是将一个类的接口转换为客户希望的另一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。它包括类适配器和对象适配器。 场景 系统的数据和行为都正确,但接口不符时,我们应该考虑使用适配器,目的是使控制范围之外的一个原有对象与某个接口匹配。适配器模式主要应用于希望复用一些现 阅读全文
posted @ 2019-03-04 16:36 二狗啸地 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 以租房为例子,如果没有房屋中介,那么房客要自己找房东,而房东也要自己找房客,非常不方便。有了房屋中介机构就方便了,房东可以把要出租的房屋信息放到中介机构,而房客可以去中介机 阅读全文
posted @ 2019-03-04 15:11 二狗啸地 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 代理模式是为其它对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用 种类 虚拟(virtual)代理 当我们需要使用一个资源消耗较大的对象,我们用到它的时候,才去真正创建它。 远程(remote)代理 为 阅读全文
posted @ 2019-03-04 11:21 二狗啸地 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 场景 当我们作为第三方开发者,需要提供库给客户使用,同时,我们又不想让用户看到我们内部的实现方法 UML 比如,我们提供给用户一个打印机类,用来实现打印服务 实现 printer.h printer.cpp printerimpl.h printimpl.cpp main.cpp Makefile 阅读全文
posted @ 2019-02-28 10:54 二狗啸地 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 前言 静态链接库会编译进可执行文件,并被加载到内存,会造成空间浪费 静态链接库对程序的更新、部署、发布带来麻烦。如果静态库更新了,使用它的应用程序都需要重新编译、发布给用户(对于玩家来说,可能是一个很小的改动,却导致整个程序重新下载,全量更新) 动态库在程序编译时并不会被链接到目标代码中,而是在执行 阅读全文
posted @ 2019-02-26 22:43 二狗啸地 阅读(9489) 评论(0) 推荐(1) 编辑
摘要: 库 库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非同寻常 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll) 静态库 之所以称为“静态 阅读全文
posted @ 2019-02-26 21:00 二狗啸地 阅读(2331) 评论(0) 推荐(0) 编辑
摘要: 使用ps命令可以查看进程的运行时间 ps 命令的 etime 和 etimes 格式化选项指定了正在运行的进程的启动时间,其中 以bash进程为例子 可以看到,一共有两个 bash 进程,我们看看进程为 2334 的启动时间 指定选项的输出头 隐藏输出头 阅读全文
posted @ 2019-02-23 15:09 二狗啸地 阅读(3710) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 9 下一页