2010年8月25日

中程在线-重构-卓越程序员修炼之道(笔记5代码管理)

摘要: 1.哪些管理决策导致不重构依靠程序员的自觉性,结果肯定是不重构。没有检查和惩罚,结果肯定是不重构。没有考核,就没有管理。      ---- 彼得*德鲁克2.只有重视才有质量一屋不扫,何以扫天下。故不积跬步,无以至千里,不积小流,无以成江海。人要成就一件大事,就得从小事做起。3.代码评审交叉评审:提交到CVS前让两个人同时评审,并对有坏味道的地方重构,且评审人签字!小组评审:每一个迭代周期,小组成... 阅读全文

posted @ 2010-08-25 19:48 曾浩 阅读(266) 评论(0) 推荐(0) 编辑

2010年8月24日

中程在线-重构-卓越程序员修炼之道(笔记4吐完我们开始进入强化训练)

摘要: 《重构》一书一共列了22种坏味道,下面我来为大家一一讲解。等等!!!你犯了个错!!!二八原则:我们80%的代码只违反了20%的坏味道,所以,我们只需学习那20%,并且做好它,那么,你就是有着好习惯的程序员了。“我不是什么伟大的程序员,我只是一个有着很多好习惯的程序员”----Kent Beck20%的坏味道:1.Duplicated Code 重复代码2.Long Meth... 阅读全文

posted @ 2010-08-24 21:41 曾浩 阅读(322) 评论(0) 推荐(0) 编辑

中程在线-重构-卓越程序员修炼之道(笔记3看烂代码直到想吐)

摘要: 很多程序员为什么没有去重构呢?因为他们天天看到的都是烂代码(其实他们不知道那是烂代码),却认为那是没问题的代码。所以,首先要做的就是看,再看,不断看,直到一看就有想吐的感觉。否定功能完成就是code complete。肯定代码易理解,可维护,才是code complete。<敏捷设计原则-Robect C Martin>第一职责:运行起来所完成的功能,这是模块存在的原因。第二职责:要和... 阅读全文

posted @ 2010-08-24 20:54 曾浩 阅读(324) 评论(0) 推荐(0) 编辑

中程在线-重构-卓越程序员修炼之道(笔记2重构与设计和架构)

摘要: 感触很多,先记下来1.设计软件有两种形式一种是设计得尽量简单,并且明显没有缺陷。另一种是设计的尽量复杂,并且没有明显的缺陷。        ----C.A.R. Hoare2.不设计和过多的设计都不好,那么,什么才是适当的设计没有重构,你就必须保证预先做出的设计正确无误,这个压力太大了。因为压力,导致了“过多的设计”,而重构排除了这种压力,那么,还会“过多的设计... 阅读全文

posted @ 2010-08-24 18:29 曾浩 阅读(245) 评论(0) 推荐(0) 编辑

中程在线-重构-卓越程序员修炼之道(笔记1了解重构)

摘要: 如果下面有任何一句话,是你想说的,那么,请来学习重构吧(1)重构束缚了我的设计!(2)重构?改别人的代码啊...改坏了我不负责!(3)重构啊...那要重新测试了吧...(4)重构?岂不是白花我的钱?1.1提到重构,大家会有一个想法立即冒出:设计和重构到底什么关系?重构肩负一项特殊使命:它和设计彼此互补。没有重构,你就必须保证预先做出的设计正确无误,这个压力太大了。如果你选择重构,问题的重点就转变了... 阅读全文

posted @ 2010-08-24 01:05 曾浩 阅读(753) 评论(1) 推荐(0) 编辑

2010年7月14日

做个统计~~~~类设计,coding和性能,你们团队先开始哪样?

摘要: 好久没跟新博客了,最近一个月在紧急充电,也忙于些私事,不过,博客园依然是我的最爱~这次来想做个统计,类设计,coding和性能,你们团队先开始哪样?1.先架构设计,尽可能多的考虑变化,重用和复用--->再开始coding--->最后解决性能问题--->交付2.先简单coding,完成流程--->通过重构使得架构更加理想化,以及为将来扩展做准备--->最后解决性能问题-... 阅读全文

posted @ 2010-07-14 20:34 曾浩 阅读(2190) 评论(16) 推荐(1) 编辑

2010年5月30日

由浅拷贝讨论到深拷贝再讨论到接口(二):针对接口编程

摘要: 继续上篇文章,把一个对象a深拷贝给对象b,我们采用继承ICloneable接口来实现。(一)有人就要问了:为什么要继承这个接口?我自己写个方法,也能实现深拷贝。[代码]然后这样调用:[代码]完整代码如下:代码 最后,Clone类编写者发出邮件:早上好!我在Framework层新增了Clone类,里面有个方法是DeepClone,实现了深拷贝。大家调用的很欢快,一切看上去其乐融融。(二)针对接口编程... 阅读全文

posted @ 2010-05-30 11:43 曾浩 阅读(351) 评论(0) 推荐(2) 编辑

2010年5月29日

由浅拷贝讨论到深拷贝再讨论到接口(一):浅拷贝和深拷贝

摘要: 接口ICloneable为我们实现了拷贝的梦想。(一)如何实现浅拷贝?新建学校对象(School),实现接口ICloneable,如果我们这样写,即完成了浅拷贝:return base.MemberwiseClone();[代码]完整代码:代码结果如下:结论: (1) 我们只用了一句话,即轻松地将a对象的值拷贝给了b对象:School b = (School)a.Clone();(二)值类型--... 阅读全文

posted @ 2010-05-29 12:18 曾浩 阅读(1057) 评论(7) 推荐(5) 编辑

2010年5月23日

采用面向对象的方式去拆任务

摘要: 面向对象编程,我们口口声声喊了快十年,但为什么程序员还不使用面向对象编程?是知识、经验不够?非也。笔者想用一句牢骚话作为开篇:拆任务都拆成面向过程的了,还怎么叫程序员去面向对象开发。让我们改进一点点:留两个小时给程序员理解需求。采用面向对象的方式去拆任务。让我们思考一下下:面向过程在一定程度上比面向对象有性能上的优势,那么,两者如何均衡?使我们既不为了面向对象而忽视性能,也不为了追求性能而忽视面向... 阅读全文

posted @ 2010-05-23 12:53 曾浩 阅读(602) 评论(4) 推荐(2) 编辑

安全重构法

摘要: 待写作... 阅读全文

posted @ 2010-05-23 09:16 曾浩 阅读(394) 评论(1) 推荐(1) 编辑

导航