11.1 重构函数式程序
重构是许多现代开发方法的一个主要部分。在一些语言中,这种技术也支持集成开发环境(IDE),比如,Visual Studio 中的C# 编辑器。大多数重构技术是为面向对象范式而开发的,但是,我们将从函数的角度来讨论。
重构
重构是修改源代码的过程,改善设计,但不改变其含义。重构的目标是使代码更具可读性,在未来更容易修改或扩展,或者改进其结构。一个简单的重构例子是重命名方法,使名字更具描述性;另一个例子是,把一段代码转换成方法,实现重用,以避免代码重复。
有了重构,我们首先写出能运行的代码,然后,再使代码更“干净”。把这两项任务分开来执行,简化了测试,因为重构不会影响应用程序的行为。有些改变相当简单,比如,重命名(特别是有了工具的帮助),而还有一些可能需要更周到的考虑。
如果改变两个语句的顺序之后,代码的行为方式还会相同吗?使用有副作用的命令式代码,必须仔细审查这两个语句;而函数式编程使代码的推理容易,所以,重构也就变得更容易了。在这一节,我们会有几个示例,但先从消除重复代码的函数式重构开始。
原文地址:http://blog.csdn.net/hadstj/article/details/42419459