什么是重构:视上下文重构有两个不同的定义,第一个定义是名词形式对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本重构的另一人用法是动词形式使用一系列的重构手法,在不改变软件可观察行为的前提下调整其结构。有人说重构就是整理代码
,从某种角度上来说,是,但是重...
分类:
其他好文 时间:
2014-07-22 23:11:15
阅读次数:
270
一、bug出现在:IE7/8bug demo: box1 box2
.clearfix:after {content: ""; display: block; clear:both;} .clearfix {zoom: 1;}
.fl {float: l...
分类:
其他好文 时间:
2014-07-22 23:11:14
阅读次数:
400
在现在这个浮躁的时期,再加上敏捷咨询师们念的歪经,他们让人感觉上就像是软件产品是可以在很短的时间内高质量的完成的,这令那些管理者们很兴奋,就像巴甫洛夫的条件反射实验中的狗看到了肉就会流口水那样兴奋。他们使用TDD,快速迭代,不断重构,持续集成直至持续部署的方法在进行软件开发。软件开发真是这样的吗?难...
分类:
其他好文 时间:
2014-07-22 23:08:13
阅读次数:
411
一些Spring
AOP的基础AOP的应用场合是受限的,一般只适用于那些具有横切逻辑的场合:如性能监测、访问控制、事物管理和日志记录。我很认可书中的这么一个观点(横向和纵向的观点),这个观点也很好的帮助我们理解什么是AOP的思想:按照软件重构的思想,如果多个类中出现相同的代码,我们应该考虑定义一个它...
分类:
编程语言 时间:
2014-07-22 23:07:55
阅读次数:
339
或许在加入continuation之前要先讲讲费这么大劲做这个有什么意义。
毕竟用不用continuation的计算结果都是一样的。 不过,这是一个兴趣使然的系列,学习这些知识应该完全出于好奇与好玩的想法。
所以我才不会告诉你们通过控制continuation可以实现call-with-curren...
分类:
其他好文 时间:
2014-05-05 22:13:58
阅读次数:
337
实现一个类似QQavator功能的代码1、原始实现 1 //存在的问题: 2
//1、wear*方法出现重复代码,可以重构;实质上为代码结构一致,输出内容相同,可以通过在定义一个基类,在基类中定义抽象的Wear*,在子类中重写; 3
//2、倘若需求中新增某种服饰,需要修改Pers...
分类:
其他好文 时间:
2014-05-05 09:39:47
阅读次数:
315
3.1MySQL 存储引擎概述 到后来,MySQL
意识到需要更改架构,将前端的业务逻辑和后端数据存储以清晰的层次结构拆分开的同时,对ISAM 做了功能上面的扩展和代码的重构,这就是MyISAM存储引擎的由来。
MySQL 的插件式存储引擎主要包括MyISAM,Innodb,NDB Cluste.....
分类:
数据库 时间:
2014-05-04 12:32:42
阅读次数:
662
VB版的机房收费系统完了之后,到c#,几乎没怎么写代码了,重新敲起那段回忆,还依稀能看到以前的影子,但是很多理论的知识感觉都已模模糊糊。
设计模式是面向对象编程的大牛们总结出的很多经典的面向对象程序设计的套路,面向过程就像是迷途的孩子,走的路越多,越难以找到顺着道找到回家的路,而面向对象就像是有了家的孩子,走到哪都能找到回家的路。呵呵,当然是有家的孩子好了。
学了UML之后,我们知道施工需要图...
分类:
其他好文 时间:
2014-05-04 08:50:42
阅读次数:
382
四月份的最后一天,写点心得,记录一下。这个月一直忙着开发一个基于Win32
API的程序,大量运用了句柄等很多API的知识。尤其随着代码量越来越大,逻辑越来越复杂,代码的清晰,健壮,扩展性成了一个需要重视的问题,也就是要适时的重构了。一丶重构的时机
上个星期在修改一块重大逻辑的时候,需要修改很多代....
分类:
其他好文 时间:
2014-05-01 09:53:25
阅读次数:
346
工作一两年的程序员们也许都会有一种感觉,要完成一个模块,一个功能或是做出一个东西都不难,真正困扰我们的是怎么做好一个东西。
怎么算是做好呢,我觉得一个好的代码,除了有个好的规范,有好的算法,最重要的还是要有很好的可扩展性,面对不断变化的需求,不断增加的功能,
没有好的扩展性的代码,会让你感觉根本无从下手,经常会让你有重头写过的想法。所以一个好的设计很重要,但是很多的时候我们没有办法设计出一个完...
分类:
其他好文 时间:
2014-04-29 13:15:21
阅读次数:
278