- 博客(12)
- 收藏
- 关注
原创 重构指南
http://www.pin5i.com/showtopic-25571.html 封装集合移动方法提升(pull up)方法降低(push down)方法提升字段降低字段改名(方法,类,参数)使用委派代替继承提取接口提取方法使用策略类分解依赖提取方法对象分离职责移除重复内容封装条件提取父类使用条件判断代替异常提取...
2009-11-27 17:26:46 73
原创 提高系统可维护性和可复用性的设计原则
[size=medium]提高系统可维护性和可复用性的设计原则[/size][b]1、“开-闭”原则(Open-Closed Principle,或者OCP);[/b]一个软件实体应该对扩展开放,对修改关闭;在设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展。换言之,应当可以在不必修改源代码的情况下改变这个模块的行为。这个原则实际上是对“对可变性的封闭原则“:...
2009-11-27 16:55:04 2787
原创 单一职责原则
[b]单一职责原则:就一个类而言,应该仅有一个引起它变化的原因![/b][b]如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。[/b][b]这种耦合会导致脆弱的设计,当变化发生时,设计会遭受意想不到的破坏![/b] 单一职责原则,其核心的思想是:[b][size=large]一个类,最好只做一件事,...
2009-11-27 16:07:33 106
原创 数据库表结构设计方法及原则
最近发现自己的表设计能力不行,所以转篇文章看看:在目前的企业信息系统中,数据库还是最佳的数据存储方式,虽然已经有很多的书籍在指导我们进行数据库设计,但应该那种方式是设计数据库的表结构的最好方法、设计时应遵从什么样的原则、四个范式如何能够用一种方式达到顺畅的应用等是我一直在思考和总结的问题,下文是我针对这几个问题根据自己的设计经历准备总结的一篇文章的提纲,欢迎大家一块进行探讨,集思广益。其中...
2009-11-27 15:38:41 123
原创 “少做多得”的团队
少做如下一些:畏惧假设分心抵触忙碌即使不是全部,这些建议中的大多数在很多方面都符合敏捷。更少的畏惧与XP里面的“勇气”价值观有关。更少的假设与经验方法中发现的实验研究也很吻合。更少的分心则可以在许多敏捷团队——他们专注于交付客户价值,使得自组织的团队每次只专注于一个项目——中找到身影,等等......
2009-11-19 11:09:10 117
原创 需求挖掘及用户研究的利器:MACUEE模型
http://dingyu.me/blog/posts/view/macuee-model 前言用户研究到底研究什么?各公司情况不一样,做法自然也不同。比较常见的情况是,很多公司根本不做用户研究,完全凭行业经验和拍脑袋来决定“用户需求”。有一些公司想到了要做用户研究,拿起电话就问:你觉得我们的产品怎么样……哦,挺好的……那就好,于是得出结论:用户喜欢我们的产品。还有一些公司觉得面对...
2009-11-17 10:14:44 433
Oracle取交集
select t.experiment_process_record_id from bio_assay_value t where (t.assay_returntype_id=1 and t.value>20 and t.value<30) intersect select t.experiment_process_record_id from bio_a...
2009-11-16 16:41:49 521
原创 ThreadLocal介绍
http://hi.baidu.com/cjjic02/blog/item/1ba41813aabde8886438dbe5.html早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。ThreadLocal很容易让人望文生义,想当然地认为是一个...
2009-11-13 09:01:55 55
关于测试的一些最近状况的体现和总结
从先写测试开始,我不希望被叫做测试驱动,因为这个离测试驱动还很遥远,现在仅仅只是先写测试,让我们再动手之前,详细的了解我们要做的是什么,以让我们经过测试的代码确实是功能完整的代码。随之碰到了一些问题:1、测试的范围,我是不是应该在测试里面写完所有可能发生的需要测试的条件。2、关于测试的数据存在否,这个是没什么可说的,可是关于数据准确性,如何来测试,关于这个问题,我尝试了一下,也问了目前在敏...
2009-11-12 10:23:37 118
原创 选择性的认知偏见与假设
[b]选择性的认知偏见与假设[/b] 每个人都会把以往的经验、本身的想法和感觉介入人际沟通,因而难免会在某些议题上坚持自己的立场。对于已经做出的决定,则往往觉得不需要或不希望接纳新的资料。 所以,接收到的新信息常会被个人的原则、道德标准和个人信仰所扭曲。 若事先想好自己对某种信息应有的反应,如心想:“好吧,权且听听,我是不会妥协的。”或是根据对方外观条件而产生预先反应...
2009-11-11 17:44:17 833
原创 Import static
静态导入是JDK1.5中的新特性。一般我们导入一个类都用 import com.....ClassName;而静态导入是这样:import static com.....ClassName.*;这里的多了个static,还有就是类名ClassName后面多了个 .* ,意思是导入这个类里的静态方法。当然,也可以只导入某个静态方法,只要把 .* 换成静态方法名就行了。然后在这个类中,就可以直接用方法...
2009-11-09 16:13:52 54
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人