编程之函数定义域检查

设计阶段绘制的框图是后期编程的关键,框图中的节点大多变成了函数。

函数y=f(x)三要素:定义域、值域和变换过程。按照封装的概念来说,变换过程是函数内部的事,调用者只要知道提供什么参数,返回什么样的结果就可以了。函数三要素一旦确定好,就不宜随意改动。

于是就有了函数的雏形,以python语言为例:

def eat(who,what):

    """who eat what.

      who must be living, or eat fail.

      if what is food, eat ok, or eat fail.

      after eat function, who and what will change somewhere.

      eat ok return True else False.

      """

      return True

函数内部编程不再详解,实现时间自定。

问题是什么时候检查函数定义域?函数输入的参数是否正确?不正确怎么处理?建议如下:

1、函数内部最开始就判断参数范围,确保函数在定义域内工作,每次调用前就不用检查了。检查一遍就行,避免重复检查。

2、检查定义域通过了,按照预定功能进行变换,返回对应的值域。若参数超出定义域,不要简单的返回False,而是显示错误或记录日志后返回,这样有利于调试代码。

3、函数要相对独立,耦合性相对越小越好。代码级别先追求效果,后追求效率。

你可能感兴趣的:(编程之函数定义域检查)