Scratch2.0编程--第十节 过程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Scratcher/article/details/78121087

本节我们来介绍结构化的程序设计中最关键的一个节点:过程。一个复杂的程序往往需要很长很长很复杂的代码,而把这些代码全部编写在一段脚本中,不但不好理解也不好测试和调试,如果把程序按照实现不同的功能划分成不同的小过程,就简单明了。


1、过程的创建

        用过程的思维解决复杂问题的本质就是“分而治之”:将一个很大很复杂的问题分解成许多小的子问题,然后逐个突破。

        我们来看看下面这段代码,通过过程分解后是不是简单明了?


        那么在Scratch中通过哪里来创建过程呢?模块“更多模块”下的“新建功能块”,点击后屏幕会出来如下对话框:

        
        紫色输入框种输入过程的名称,点击选项,还可以为过程添加很多输入参数。虽然全局变量可以在整个程序内使用,但是数量太多了会严重增加程序的复杂度,因此用参数的形式将过程需要的变量带入,就会简单很多。

比如上面的画正方形或者三角形的过程,这样的过程只能画边长为100的正方形和三角形,如果我想要根据程序的需要来画不同的边长的图形,那么参数就可以做到:

        
        参数作为数字、字符串、布尔类型都比较好理解,我们来看看“文本标签”是什么?

        
        看到这个大家就明白了吧?这其实和积木里的文本标签是同一个意思,起到说明作用的。

        下面我们来总结一下过程的特性:

        (1)过程不能在角色之间共享。过程只能在角色内使用,同样,舞台的过程也只能在舞台的脚本中使用。

        (2)给参数命名的时候,尽量采用具有实际意义的名称,这样可以提高程序的可读性,一目了然。

        (3)过程的删除有两种方法,直接从脚本区拖到积木区,或者在积木区右键“删除”,但是在被引用的过程不能被删除。

        (4)如果要增加或者删除参数,点击右键“编辑”功能即可实现。


2、过程的调用

        上面我们学习了过程的创建,那么在过程中是否还可以调用别的过程或者自己本身呢?答案是肯定的。

        我们来看看这段代码:

           

        Draw square(Len)根据输入的长度画正方形。

        Draw squares()调用Draw square(Len)分别画4个重叠的正方形。

        RotateSquares(number1)再调用Draw squares()重复的画。

        我们分别为RotateSquares(number1)带入参数4、6、8、10、12、14,最后就出来下面的效果:


        好了,到这里,我们就全部讲完了Scratch中脚本区所有的模块和积木的使用方法,大家可以根据自己的想象来创造属于自己的程序空间了。加油!

猜你喜欢

转载自blog.csdn.net/Scratcher/article/details/78121087
今日推荐