首页 > 技术文章 > 第四章 第二节 使用广播模拟过程

youjianschool 2020-06-30 22:00 原文

用过程的思维解决复杂问题的本质就是“分而治之”:将一个很大很复杂的问题分解成许多小的子问题,然后分别解决并独立地测试每一个子问题,最后将这些子问题整合在一起,从而解决了最初的问题。

所谓过程,是指执行特定功能的一系列积木的集合。例如,绘制图形、执行复杂的计算、处理用户输入、弹奏音符或管理游戏等。

在讲过程之前,我们来了解下使用广播模拟过程究竟是如何实现的?

利用角色广播消息时,其自身也能接收到该消息的特点,我们可以把希望执行的过程放在当接收到木之后。广播时建议使用广播…并等待,这样便能确保多个过程以正确的顺序被执行,而不会出现第一个过程没有完全执行完毕便开始执行第二个过程的情况。

下面以之前做过的项目《妙笔生花》为例来讲解用法。原程序如下:可以分为:1.等待按下鼠标 2.画线 3.画花 三个部分,之前的程序是全部放在一起的。现在使用广播…并等待积木来模拟过程。

改进后的程序如下,主程序是不是变得很简洁了?当点鼠标后,先广播一条消息drawline并等待,程序进入“当接收到drawline”以下的指令,然后往下走,接着广播消息drawflower并等待,程序进入“当接收到drawflower”以下的指令,最后抬笔。

推荐阅读