- 博客(3)
- 收藏
- 关注
原创 重构:改善既有代码设计——第八章笔记
8.1搬移函数 动机:根本目的是为了更好的模块化,直接原因是:如果一个函数频繁引用其他上下文,可能说明这个函数跟另一个上下文的关系更加紧密,此时,让这个函数与那些更亲密的元素相会,也许可以取得更好的封装效果。 在类之间搬移函数 class Acount{ double getBankCharge(){ double result = 4.5; if(this.daysOverdraw > 0) result += getOverdraftCharge(); return r
2020-07-18 23:50:41 224
原创 重构:改善既有代码设计——第七章笔记
7.1封装记录(和引入参数对象的区别?) 动机:对象可以隐藏结构的细节,比如要描述一个区间,可以用{star,length},{star , end},封装成一个对象,用户就不必追究存储的细节和计算的过程,只要向外提供get函数即可。 7.2封装集合——集合类 动机:封装程序中的可变数据,这样可以清楚看到数据修改的地点。 7.3以对象取代基本类型 动机:开发初期,可能会以简单的数据项表示简单的情况,如用一个字符串来表示电话号码,随着开发的进行,开始需要如“抽取区号”,“格式化”等功能,这样会导致重复的代码频
2020-07-18 23:49:55 266
原创 重构:改善既有代码设计——第六章笔记
最近读了《重构:改善代码既有设计》这本经典的重构书,平常靠“感觉”的重构被作者整理成一个个小技巧,在这里加以总结,也方便以后查阅。 6.1提炼函数 动机:将意图与实现分开,通过函数名可以看出其用途 情况: 无局部变量 有局部变量:通过函数参数传递 对局部变量再赋值: 若只有一个值,采用返回值返回。 若有多个值,可以返回一个自定义的结构,也可以用多个函数 更好的方法还有:查询取代临时变量和拆分变量 思考:编译器优化让我们不用过于担心性能问题,即使是只有几行的代码,也是值得抽取的 6.2内联函数 动机
2020-07-18 23:48:41 203
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人