昨天给小组的几个新员工讲解一下重构,主要是因为这两天在对应新员工的一些代码,发现了一些问题,希望他们后面能注意一下,也顺便讲解一下重构,就拿他们的代码讲解了一下重构实战。过后对与重构的定义范围做了一些思考。觉得重构不仅仅是个狭义的范畴--以前我理解的。
Refactoring is a disciplined technique for restructuring an existing body of code,altering its internal structure without changing its external behavior
1:大一些来说,重构的对象可以是一个系统,只要不改变软件的外在行为,即软件的功能,那么对整个系统进行大的手术,也是重构。对于用户来说可能什么都没有发生变化,效果可能影响的对象,架构师--可以更快更好的扩展等,编码人员--今后可以更快的响应用户的需求。
2:次一些,重构的对象可以是一个功能点,不能改变的地方是对外的接口,也就是充当facade的那个类的所有public方法,那么这个功能点内部的剩余的所有方法都可以更改,进行重构,不管是否是public的。影响的对象,今后的维护人员,可以更快的定位问题的所在,可以更快的响应用户的变更需求。
3:再次,重构的对象就是一个类了,那么不能改变得就是这个类的所有对外的public接口和protected接口,别的都可以修改。影响对象同上。
4:最后就是方法,字段等了。影响同上。
所以站在不同的角度,站在不同的重构对象上,可以修改的东西也是不同的,就像public方法,如果站在系统和功能点上来说,有时还可以修改的了。这些都应该不是问题。当然了,作为api对外发布的就不一样了。
罗里罗嗦的说了这么多,主要就是中午自己胡思乱想了很多,就把这些记录下来,看看自己的成长历程。
分享到:
相关推荐
小议新形势下大额现金管理.doc
小议现行金融制度对农业的影响.doc
小议外汇期权会计在新规则中应用.doc
小议羊首勺
小议经济型酒店消费者心理及消费方向.doc
小议秦始皇焚书坑儒.doc
私立幼儿园小议.pdf
小议初中政治趣味教学
嵌入式linux小议:ELF 文件格式分析嵌入式linux小议:ELF 文件格式分析
小议网页视觉设计.doc
小议嵌入式计算机技术.pdf
法治思想起源小议.docx
小议生命发展史.pptx
小议食品安全问题.doc
高中政治复习小议.docx
小议证券违法实证.doc
小议学生早恋问题.doc
小议我国证券问题.doc