本文将从以下几点浅谈原型模式:
概述
结构图
分类
浅复制:结构图
代码
复制图示
深复制:结构图
代码
复制图示
总结
概述:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节。
复制过程,并不是做一个抽象类,去实例化它。而是只需通过实现一个含有Clone()方法的接口就可以去克隆,这就是.NET在System命名空间中提供的ICloneable接口 。...
分类:
其他好文 时间:
2014-05-05 21:27:41
阅读次数:
359
原地址:http://blog.csdn.net/luyuncsd123/article/details/18351137查阅了一些行为树资料,目前最主要是参考了这篇文章,看完后感觉行为树实乃强大,绝对是替代状态机的不二之选。但从理论看起来很简单的行为树,真正着手起来却发现很多细节无从下手。总结起来...
分类:
其他好文 时间:
2014-05-04 20:58:17
阅读次数:
595
前不久把某学校的水卡顺利破解了(不了解事情经过的看上一篇文章),看似很顺利,但最近偶然发现一些细节问题,细心的话可能也有人留意到,卡中的数据除了两个值块保存余额之外,还存在其他的数据,虽说学校的热水系统不联网,但要是机器自带日志记录,把我卡记录下来那不就完蛋了?所以此次要斩草除根,免得引来无穷后患。...
分类:
其他好文 时间:
2014-05-04 20:48:32
阅读次数:
1263
这几天由于工作的需要,写了一个业务逻辑较复杂的存储过程,其中多次用到了JOIN、LEFT
JOIN、RIGHT
JOIN在处理表之间的逻辑的作用被渲染的淋漓尽致。说明一下,之前少处理数据库后台的经验,特别是没有好好的研究SQL的知识细节。不过也简单的学习了,自以为看明白了。就懂了。现在想来那时就是浅...
分类:
数据库 时间:
2014-05-04 11:32:18
阅读次数:
329
场景:
1.位域作为一个控制空间大小的语法特性其实是有它自己的用武之地的,比如网络通讯的协议定制,使用位域为1来严格限制bool值为0,1等等.
2.它有一些细节需要注意,
第一: 位域的大小是值的类型的整数倍,不足整数倍的补全.如unsigned short的大小是16位,那么如果总值17位的话会自动补全到16*2=32位.
第二: 赋值当然需要位运算符或者不超过它的最大值的整数....
分类:
编程语言 时间:
2014-05-04 09:24:53
阅读次数:
373
第48期百度技术沙龙上的《大数据场景下主题检索应用》讲座介绍了很多训练大规模主题模型的技术细节。讲座回来后,我粗略整理了下讲座上涉及的主题模型和训练大规模模型相关的资料和文献。
1. 主题模型的发展历史
a. 布尔模型 Boolean model
b. 向量空间模型 VSM (Vector space model)
c. 潜在语义索引 LSI (Latent...
分类:
其他好文 时间:
2014-05-03 21:40:07
阅读次数:
371
今天凑巧去W3School扫了一遍JavaScript教程,发现从中看到了不少自己以前没有注意过的细节。
我这些细节列在这里,分享给可能同样不知道的朋友:
1、使用 document.write() 仅仅向文档输出写内容。如果在文档已完成加载后执行 document.write,整个 HTML 页面将被覆盖:
实例
My First Web Page
My...
分类:
编程语言 时间:
2014-05-03 21:30:52
阅读次数:
344
挖个坑,埋点土,数个一二三四五。今天我们从它说起建造模式。
概述
其核心思想是将一个“复杂对象的构建算法”与它的“部件及组装方式”分离,使得构件算法和组装方式可以独立应对变化;复用同样的构建算法可以创建不同的表示,不同的构建过程可以复用相同的部件组装方式。因此,如果我们用了建造者模式,那么用户就只需指定需要建造的类型就可以得到他们,而具体的建造过程的细节就不需知道了。
优点
使得建造代码与表示代码分离,由于建造者隐藏...
分类:
其他好文 时间:
2014-05-03 21:12:03
阅读次数:
274
一、前言
AOP (Aspect Oriented Programing) - 面向切面编程,它主要用于日志记录、性能分析、安全控制、事务处理、异常处理等方面。
二、实现细节
下面这个例子利用AOP来实现日志记录:
附上一张类的结构图,该例子需要导入dom4j.jar
① 业务逻辑接口
/**
* 业务逻辑类接口
* @a...
分类:
编程语言 时间:
2014-05-03 17:48:34
阅读次数:
317
1、什么是好的代码?
从工作角度上看,我觉得就是能用的代码,适用的代码,通用的代码。比如来说,一段的代码把功能实现了,这个是能用的代码。但是呢,代码可能中间还是有一些偏差,比如界面上数据显示很粗糙,运行速度不够快。所以写完能用的代码后,我们会再修改,修改,显示数据优化下,优化线程,优化内存管理。好的,再看一看,功能看起来还不错,心满意足了,这个是适用的代码。某一天我们把这个程序搬到另一个平台上面...
分类:
其他好文 时间:
2014-05-03 17:24:01
阅读次数:
331