大头
标签云
3G
AWS
Android
BeautifulSoup
Boto
CC
DONT_MAKE_ME_THINK
DTV
DVB-T
Haskell
ISDBT
JUnit
LUdecomposition
Linux内核
MIPS
MiniBlog
Perl
PyInstaller
S3
SI
STM
Subtitle
UED
VideoDemystified
VideoResolution
audio
c/c++
cassandra
colorspace
colorspace VideoDemystified
compile
debug
dvb
eLocutor
format
fortran
gui
h.264
icon
interlaced
java
joke
kernel
linux
matlab
mono
ota
php
project
pyExcelerator
python
resource
ruby
spec
stb_design
stereo
svn
twitter
unicode
warning
书债
书托
交互设计
会议管理
信号量
出差
出版
勘误
反思
哲学
团购
团队
图书
图灵新知
培训
妈妈
娱乐
并发
弗洛伊德
微博
抑郁症
投诉
捉虫日记
改变心理学的40项研究
敏捷
敏捷开发的艺术
数学
数据库
新闻
森田心理疗法实践
森田正马
津巴多普通心理学
测试
烂书
用户体验
界面
瞬间之美
神经症
神经质症
科普
管理
精神病
精神病学
编译
编辑
翻译
药物治疗
设计
证实偏差
质量
逻辑
配置管理
重构
高良武久
分类
日历
十一月 | ||||||
---|---|---|---|---|---|---|
日 | 一 | 二 | 三 | 四 | 五 | 六 |
27 | 28 | 29 | 30 | 31 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
评论
留言
微博
热门文章
随机文章
豆瓣上谁关注这里
链接
搜索栏
RSS
功能
页面
计数器
481584
访客统计
存档
重构 - 090807
6.1 Extract Method
提炼(extracting)代码,使每个函数的粒度变小,有着很多好处:函数复用的机会变大;可读性强;函数的override更容易等。
作者说:即使想要提炼的代码非常简单,简单到知识一条消息或一个函数调用,只要新函数的名称能够以更好的方式昭示代码意图,也应该提炼它。
在嵌入式环境里,尤其是空间资源有限的条件下,对Extract Method方法的运用可能需要做一点调整。
单纯使函数粒度变小的提炼需要慎重,除非实际已有复用的代码段。
由于编译器的优化,无法准确预估单纯的提炼一段代码对编译出的二进制代码体积有变大或是变小的影响,更难估计对运行期空间的影响和执行效率的影响。
我的体验是,如果想要提炼一段代码,先试一下,如果大大提高代码的可读性,又没有显著增加代码体积,可行;如果代码段已有“复用”,根据“事不过三,三则重构”的原则,可为,即便会增大代码体积,只要在可以接受的范围内;如果增加了代码体积,这个成本换取的可读性不合算,不为。
至于怎样才是显著增加代码体积,要根据不同工程的情况来判断了。