<重构>读书笔记之<提炼方法>
来源:互联网 发布:营销软件 编辑:程序博客网 时间:2024/06/10 08:41
动机:方法粒度小,重用率高,可以读起来像注释,重新修改时比较简单。要注意命名,否则,不提炼也罢。
关键:局部变量或是以整体搬迁(声明、使用都移动到新方法)还是以参数传递的形式传递给新方法。注意局部变量是不是在后面的代码使用到了。
示例:
def print_owning(previous_amount)
outstanding = previous_amount * 1.2
print_banner
#calculate outstanding
@order.each do |order|
outstanding += order.outstanding
end
print_details outstanding
end
提炼、注入闭包、内联化局部变量---->
def print_owning(previous_amount)
print_banner
outstanding = calculate_outstanding(previous_amount * 1.2)
print_details outstanding
end
def calculate_outstanding(initial_value)
@order.inject(initial_value) { |result, order| result + order.outstanding }
end
- <重构>读书笔记之<提炼方法>
- 重构之提炼方法
- 读书笔记-重构 - Extract Method(提炼方法)
- <重构>读书笔记之<内联化方法>
- 重构笔记——提炼函数
- 重构笔记——提炼类
- 《AndroidStudio每日一贴》11. 重构之提炼为常量
- Java\Android进阶代码提炼师之代码重构原则
- 读书笔记之《重构》第二章
- java 重构学习2:提炼函数(Extract method)
- 重构--Extract Method(提炼函数)(四)
- 重构方法之大型重构
- 提炼方法 Extract Method
- jQuery ajax方法提炼
- 《重构》读书笔记(一)
- 《重构》读书笔记(二)
- 《重构》读书笔记
- 重构读书笔记
- Ambition
- 黑马程序员_领略Java内部类的“内部”
- 批处理文件编程
- UVA-10192-Vacation
- UVA-147-Dollars
- <重构>读书笔记之<提炼方法>
- 黑马程序员_Java编程基础(三)
- UVA-357-Let Me Count The Ways
- hdu 1067 Gap bfs+hash
- UVA-10285-Longest Run on a Snowboard
- UVA-825-Walking on the Safe Side
- 网络客户端(1)------连接
- UVA-10534-Wavio Sequence
- 网页历史快照获取器