青少年通用图形化编程
作者:刘立勋 龙华金 蔡悦
来源:《数字技术与应用》2019年第05期
作者:刘立勋 龙华金 蔡悦
来源:《数字技术与应用》2019年第05期
摘要:本文介绍的可面向软件或硬件的编程工具在图形化编程中,以其明显的简洁性和“类似玩具”的特性,培养了青少年对编程的兴趣,为进入人工智能、计算机编程时代做好准备。
关键词:青少年;图形化编程;编程工具
中图分类号:TP319 文献标识码:A 文章编号:1007-9416(2019)05-0208-03
0 引言
少儿图形化编程是一种新兴的编程模式。它并不是要求青少年学习如何编写高级开发语言例如C编程启蒙是学什么的语言、Python语言的文本代码,而是通过一些具有简易文字的图形模块来编程,在软件方面可以制作一些有趣的小游戏、动画,以此进行游戏编程启蒙;在硬件方面可以通过电子元件连接制作一些趣味小项目,动手开动想象发挥创造。图形化编程的编程形式是图元模块。图形化编程是指将传统的文本程序代码经过封装成一个个图元模块,使用者只需将封装好的图元模块进行拼接即可完成图形程序的逻辑设计。图元模块拼接相当于传统文本编程的流程图,两者的逻辑思想是一致的,区别只是其表达形式存在根本差异。既可基于软件游戏,
也可基于硬件电路,图形编程门槛低、操作生动简单、界面美观、便于实践,适用于各个层次使用者学习[1]。
本文首先现对图形化编程软件系统进行简单介绍,其次到面向6岁以上儿童的少儿编程工具——Srcatch,最后简述面向12岁以上的青少年、可供硬件编程工具——Mixly。
1 图形化编程的软件系统
图形化编程的使用者主要是儿童、青少年而并非是专业的编程人员,他们没有任何的编程基础,故易于使用、简洁明了是图形化编程软件的首要目标。而且编程软件的界面需美观,要有更好的交互性,界面的布局需要合理,颜的使用要符合儿童、青少年的审美,达到真正的易学易用。图形化编程的软件系统主要包括软件界面设计、图元模块的封装、图形程序编辑设计、图形程序编译和通信扩展[2]。
(1)软件界面:主要包括图元模块库栏、程序编辑窗口、菜单栏、工具栏、C语言生成窗口和输出状态窗口等。界面设计主要使用Java语言代码设计,Eclipse的插件为界面运行提供支持。(2)图元模块的封装:图形化编程软件中的一个图元模块对应着传统文本编程
的一句代码、一个底层调用函数,通过对传统文本编程的代码、函数等进行封装后变成可供使用的简易文字图形化模块。其封装过程使用C++语言,以模块形式封装的编程元素和表示不同數据结构、功能之间关系的代码,通过对不同功能函数和代码段的封装来定义图元模块的功能。(3)图形程序编辑设计:图元模块可以进行复制、移动、删除、创建和参数修改。对于编辑图元模块,主要是鼠标的操作;鼠标的按下、松开和移动。图形程序设计部分主要是在程序编辑窗口完成,进行程序设计时是对在图元模块库中且具有各种功能的图元模块根据所需实现的功能效果进行拼接。拼接的方式即类似于积木的堆叠,把多个图元模块拼接在一起以创建一系列程序命令,图元模块像拼图积木一样拼凑在一起呈现着凹陷和凸起。(4)图形程序编译:该图形化编程系统的平台编译是C语言的编译环境,当完成图形程序的编写后,点击“编译”按钮后,首先系统会自动检测并将图形程序中的简易文字,转换成C语言,并对该C语言代码执行必要的语法检测,根据其逻辑关系生成相应的sub.c文件进行保存、编译。C语言程序的编译过程主要分为四个步骤:A、将.C文件进行预处理;B、将.C文件编译成.O文件,此过程调用相应的编译器;C、将.O文件链接生成.elf文件,此过程调用相应的链接器;D、将.elf文件转换成.hex二进制可执行文件,并将该文件下载运行。(5)通信扩展:该部分主要是面向图形化编程硬件下载,支持并完成多端口数据通信。简单来说就是将
图形化程序下载到硬件主控板上,运行其图形化程序要实现的功能。图形化编程软件系统和需要连接的硬件主控板之间的信息交换即由图形程序编译翻译而来的代码和转换的底层硬件系统识别的目标代码识别通信。
2 面向软件的图形化编程——Srcatch
2.1 Srcatch
面向软件制作软件小游戏的图形化编程软件有很多,例如有Makeblock、linkboy、ArduBlock、blockly、WeMake等等,其中一款开源图形化编程软件——Srcatch,是由麻省理工学院设计和开发的。Srcatch软件由2006年开发,现已被翻译成40种以上的语言,超过150个国家在被使用。该软件可以说是面向少儿和青少年图形化编程软件的鼻祖,是学习少儿编程起步的最佳选择[3]。Srcatch主要针对6岁以上的儿童,通过游戏编程启蒙,以玩的形式来学习编程,从而培养孩子的逻辑思维、提升孩子的专注力。
如今,少儿编程越发火热,各种图形化编程软件层出不穷,选择使用Srcatch,主要是因为Srcatch简单易学而且其功能强大,可制作游戏、动画、绘画、音乐、数学、科学、动作,且编程界面美观、颜鲜艳明丽、封装好的简易文字模块简单易理解。
2.2 Srcatch编程实例分析
基于Srcatch,制作一个小游戏——迷宫如图1所示。下面就以该游戏进行分析,游戏中一共有6个角,分别是老鼠、汉堡、幽灵、甲虫1、甲虫2、甲虫3。迷宫的形状是根据对游戏设计的要求,自己在画布上绘制。在进行游戏制作的时候,对每个角都会有不同的编程要求,如图2所示为角老鼠的图形程序。该游戏的游戏规则是老鼠在迷宫中吃汉堡,汉堡若是5秒内还没有被老鼠吃到,便会自动切换位置。老鼠吃汉堡期间要躲避甲虫1、甲虫2、甲虫3,还有随时随地会突然出现的幽灵;幽灵出现后,若是5秒内没有触到老鼠,便会自动消失10秒后再次出现;而且老鼠不能碰到迷宫的,只能在迷宫中间行走;若是老鼠被甲虫、幽灵触碰到,即游戏结束。
少儿编程利用图形化这种特别生动形象的方式,将传统文本编程知识用呈现出来。在图形编程的过程中,传统的文本代码隐藏在一个个封装好的模块中,只需将模块连接就可以完成一个小程序、做出一个小项目,编程变得具象化。而且,程序都是简易文字模块,并不涉及真正的复杂代码,这样的形式使得孩子有更多的空间进行创造。通过这种玩的方式学习,更能得孩子的欢心。毕竟喜欢玩是孩子的天性,传统的教育方式将知识强行灌溉,这种少儿编程的方式更能吸引孩子的兴趣。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论