“法天象而应四时”--茶话软件开发之“抽象”(2)--过程的抽象:函数

本想写这样的一个系列的,无奈一直没有时间,没想到网上已经有人写了类似的文章,说明了我原来的观点:
函数既是过程的抽象!
当然,函数的抽象意义远非如此简单,这里先做一个概念入门,请看转帖的原文:
 

 

算法+数据结构=程序。

这是一条很著名的公式。但是我觉得过于简单的公式或者不能适应现在的开发潮流了。

 

程序一个目的是用来模拟人类的行为,让机器自动化处理本来人自己需要处理的事务。

正因为这样,所以程序有很强的“过程性”,把人的步骤转化为计算机指令的序列。

过程性的设计方法,是最原始的方法,是完全模拟人类习惯的一种方法。

但是,其实过程并不是我们关注的重点,我们关注的是结果。只要是这个结果,我们不在乎这个过程究竟是如何实现的。

有没有办法表述这种从输入到结果的对应关系呢?

有,那就是函数。有了函数,我们就将过程给抽象化了,我们再也不关心过程如何,只需要知道这个函数能正常工作就行了。

 

因此函数是过程的抽象。我们可以把人类具体事务,识别成各种函数关系。函数关系是关于定义域和值域的对应方法。建立函数关系,首先要明确的定义域和值域,这表现为数据的状态集合,然后定义转换方法。

 

函数是一个非常高层次的抽象概念,但是过于数学化。我们认识事物的一般方法并不是去定义什么状态集合,而是基于一些归纳了的概念。

 

待续

posted on 2012-01-20 16:59  深蓝医生  阅读(296)  评论(0编辑  收藏  举报

导航