模块化

作者: 践行者0523 | 来源:发表于2019-11-20 18:02 被阅读0次

    最近在笑来老师的box定投践行群里学Python,里面有提到模块化。

    模块化是结构化编程的核心理念,其实很简单,就是“化整为零,分而治之”的古老智慧的编程版本。

    分解:大型系统 分解成中型,中型分解成小型,小型系统分解成一个个子系统和模块,模块分解成若干代码段,最后这些代码足够简单,对给定输入给出可预期的输出,易于描述,易于实现,易于测试,这位的代码段通称过程( procedure)或者“函数(function)",也有各种其他称谓,本质相同;

    组装:通过调用简单函数来完成更复合,更复杂的任务,不断重复这个堆积木的函数,只要小模块都是正确的,那么组合而成的系统也应该是正确的。

    比如前面的例子就变成了:

    定义函数add, 输入是两个数,输出是两个数相加之和;

    定义函数sub,输入是两个数,输出是第一个数减去第二个数的差;

    定义函数print,输入是一个数,print函数将其显示在缺省终端上;

    定义函数main,完成下述流程:

    1,从某个地方读一个数a;

    2,从另一个地方读一个数b;

    3,如果b>=0则定义 c=add( a,b),否则 c=sub(a,b);

    4,调用print(c);

    5,结束。

    这样整件事被分解成了add,sub,print和main四个函数,每个函数都只做简单的、易于验证的事情,每个函数可以被不同的人编写和测试,复杂度被分解和降低了;而这些函数可以用严格定义的程序流程(条件分支,循环等)组合起来,形成更大的函数,如此我们就可以从非常简单的积木出发,最终构建宏伟的城堡。

    相关文章

      网友评论

          本文标题:模块化

          本文链接:https://www.haomeiwen.com/subject/msmoictx.html