最新消息:

少儿编程|Scratch如何解决或避免程序中遇到的各种BUG

Scratch 少儿编程 3497浏览 0评论

友情提示:视频教程观看时请手动设置清晰度。

如何解决Scratch程序中各种奇怪的问题-debug

如何解决我们Scratch程序中那些奇怪的问题

我们以Scratch为例,Scratch虽然是一个简单的图形化编程工具,将编程简化到了7岁以上的孩子就能够操作和使用。

但是在实际的项目开发过程中,我们会遇到的各种问题,这与其他正式的编程开发语言没有大的区别,我们一样会遇到各种各样BUG(程序中,藏着一些暂时未被发现的缺陷或问题统称为bug)

我们有哪些方法解决或避免程序有过多的BUG,又有什么好方法,能让我们发现程序中bug的时候能够快速、精准的找到他们,并且修复呢?

· 壹 ·

如何解决我们Scratch程序中那些奇怪的问题
如何解决我们Scratch程序中那些奇怪的问题

怎样避免BUG

1、开发思路要清晰:不管使用什么工具,我们在设计代码模块的时候,都应当尽量理清楚自己的思路,用尽量简洁的方式来实现想要的功能,或者使用模块化的方法来进行制作。同时注意记录开发思路,无论文档还是设计图。

  2、模块一定要简洁:一个程序过程序列当中,条件分支不宜过多,尽量通过分析将条件重新组合,以更简便的方式来进行。同时循环嵌套也同样要通过优化方案来尽量减少嵌套的层数。

  3、独立的功能模块:能够重复使用的功能为了实现可重用性和扩展性,建议写成独立的过程(比如自定义模块),定义好相关的参数由外部程序调用。

  4、善用变量:将常用数据通过变量或列表进行存储,方便统一修改和使用,减少出错几率。

  5、分段制作:将一个复杂的功能拆分为多个小功能任务,分步骤进行制作,并且对每一次实现的功能进行测试。

  6、及时测试:我们应当尽量在每一次修改或者完成一小部分的制作后及时进行测试和修改。不要将可能存在的错误留到最后才发现,这样就容易留下各种奇怪的问题,同时难以定位错误的具体原因。

· 贰 ·

如何解决我们Scratch程序中那些奇怪的问题
如何解决我们Scratch程序中那些奇怪的问题

如何判断bug

1、优先处理容易出现的BUG。

  2、准确的描述出问题的现象以及和我们预期效果的差别。

  3、找出我们的程序流程错误还是逻辑错误或者是数据的运算错误等等。

  如果能够简单的通过判断来找出错误类型,那么对于我们定位问题的位置就会有很大的帮助。

· 叁 ·

如何解决我们Scratch程序中那些奇怪的问题
如何解决我们Scratch程序中那些奇怪的问题

如何定位bug

1、找出自己的设计,凭记忆,或者画下来。

  2、根据程序的设计来寻找错误可能存在的地点

  在这其中有很多的方法来帮助我们准确的找到错误位置,比如:

  1)、变量定位:在我们认为是程序的执行次数或者是否执行的问题上出现错误的时候,我们可以选择在怀疑没有运行或者运行出错的模块当中,插入一个变量来观察输出的结果,如果输出结果正确比如分支正确执行输出我们的变量内容,或者循环次数正确输出正确的循环数字,那么我们就可以确定这一代码序列属于正确的,否则我们就可以确定这一段序列当中出现了错误。

  2)、放大现象:有时候出现的错误并不明显,不能准确的了解到出错原因,那么这个时候我们就可以想办法通过重复操作,或者试着修改程序,来放大错误现象,帮助我们定位具体的出错原因和位置。

  3)、二分定位:将怀疑存在错误的指令序列进行拆分,进行分步运行,看看哪一个步骤在运行时出现的错误,逐步缩小拆分的范围,来确定错误位置。

scratch拆分后的指令可以通过直接左键点击序列来分步运行单独的部分。

  4)、现场模拟:换个角度来思考问题,如果我需要设计出现错误的效果,那么我会怎样来设计我的功能和指令序列,然后根据自己可能采用的方法,去寻找是否有部分指令序列有相似的效果。

· 肆 ·

如何解决我们Scratch程序中那些奇怪的问题
如何解决我们Scratch程序中那些奇怪的问题

如何处理bug

1、逐个解决,多测试。每次修改指令或者数据后务必立马进行测试,查看错误是否被修正,或现象是否有好转,逐步解决错误。

  2、记录BUG,这样便于在后面的制作过程中解决类似问题,以及作为日志记录,便于我们以后的了解。

  3、掩盖错误,尽管这是一个十分不推荐的方法,但是当我们遇到短时间内用了各种办法实在无法解决的问题时,我们可以通过加入更多指令的方法,来修正错误的现象,但是不到万不得已,不建议使用,这可能会留下更大的隐患。

  4、寻求帮助,加入QQ群或其它交流群去寻求他人指导与帮助,不过有个前提你需要能够清晰的表达自己所遇到的问题,这样会事半功倍。

尽管我们使用的是看起来十分简单易懂的scratch来进行制作,但是作为计算机的创作来说依旧是十分严谨的,稍不注意我们就可能会在自己的作品中留下一些错误,我们不能放任不管,而是坚定目标持之以恒,尽量消灭每一个错误,来打造一个流畅的体验。

如何解决我们Scratch程序中那些奇怪的问题

学习编程最基本的是编程概念的掌握,Scratch虽然是以积木形式进行的编程,但它的8个编程部件都包含了常见的编程概念,如程序的三种基本结构:顺序结构、循环结构和选择结构,还有变量的定义和链表(数组)的使用等。Scratch在程序设计时引入了事件、线程、同步的概念。

例如Scratch中包含多种事件,如判断角色是否碰到边界、是否遇见某种颜色等;而多线程则是让舞台上的不同角色各自执行不同的脚本,互不妨碍;在程序中不同角色间可以通过发送广播和接受到广播实现同步。学生在使用过程中自然而然就掌握了正确的编程概念

学习编程最重要的是编程思想的培养,要在程序学习中培养学生利用编程解决问题的能力。用Scratch编写的动画和游戏非常直观,学生在学会了编程的基本原理和方法后,有兴趣也有能力将动画和游戏编写得更逼真,更好玩。在修改动画游戏脚本的过程中,学生不断地提出问题,解决问题,能够根据自己的需求进行分析,设定合适的角色与相应的脚本,最终实现程序。

目前,Scratch在我国还没有完全普及开来,而在我国“台湾”地区,中小学生的信息化课是就是以Scratch这个编程软件为主来上的。

通过教育研究发现,学生对这款软件的学习兴趣很高,能够比较容易走出简单的范例模范转而进行自由创作。学习Scratch不仅让学生了解了程序设计的思想,对培养学生的创新能力也有很大帮助。

有人说,如今很多中学生大学生沉迷于网络游戏,是因为他们没有早早地接触游戏编程,我觉得这有一定的道理,如果在我们中小学信息课程引入Scratch计算机编程,让学生在学习中自己编写程序,设计游戏,家长和老师在中间做正确的引导和介入,引导他们从被动地玩到主动地创造,让他们体会到成功的快乐,那么,在面对网络游戏的时候,他们就会有更强的抵抗力了。

这个阶段的程序设计教学并不是要将所有学生都培养成为编程高手,而是要求能够让学生培养出一定的编程思想,更重要的是培养出学生的学习兴趣。

Scratch使用“搭积木”的方式进行编程的教学,对于学生来说更加直观,更加有趣,为日后学习更深层次的编程语言打好基础。

换个角度看编程

 

您必须 登录 才能发表评论!