带你读《Blockly创意趣味编程》之一:Blockly概述

简介: Google Blockly作为一种可视化编程语言,通过类似拼图的方式构建出一个程序。本书配有丰富的案例、图片,对Blockly的基础知识、程序结构以及高级使用进行了详细的介绍。在每一章结束后都搭配一个游戏,帮助巩固本章知识,反思学习效果,更快速地上手Blockly编程。此外,每一章的课外拓展资料可以帮助了解计算机的发展。

点击查看第二章
点击查看第三章
Blockly创意趣味编程

image.png

周庆国 崔向平 郅 朋 编著

01

Blockly概述
● 学习目标
理解Blockly的概念、编程方式。
掌握在线版和离线版Blockly的使用。
掌握Blockly各个模块的功能。
● 知识图谱

image.png

在本章中,我们将学习什么是Blockly及其编程方式、在线版与离线版的Blockly的使用方式以及各个模块的功能。学习完本章的内容后,我们将对Blockly有一个整体的了解。

1.1 什么是Blockly

Blockly是一种可视化编程工具,也是众多可视化编辑工具的鼻祖。2012年6月,Google发布了完全可视化的编程语言Google Blockly。Blockly代码块由类似于积木的图形对象构成。使用者通过拖动鼠标,就可以将这些“?代码积木?”拼接起来,创造出简单的功能,然后将一个个简单功能组合起来,最终构建出一个程序。相较于传统字符型的编程语言,Blockly语言无须大家考虑命令行模式下复杂的语法规则,学习成本更低,趣味性更强。
1.一种基于网页的可视化程序
Google Blockly是基于网页的可视化编程工具库,用户可以以离线或者在线的方式,在Windows、Linux和Android等平台上使用Blockly进行编程操作。
2.多种开发语言环境库
Blockly基于图形化编程设计,可以导出JavaScript、Python、PHP、Lua、Dart等多种语言。在Blockly中有一个类似语言转换器的工具箱,可以将图形化编程语言转换成多种编程语言代码,有助于用户通过图形化编程方式理解多种程序语言。
3.开源的自定义编程环境
Blockly是开源的编程工具,用户可以根据自己的需求对Blockly工具箱进行自定义设计。同时,Blockly开发工具能将用户自定义的块添加至工具箱,并在工作区工厂完成对代码的封装,如图1-1所示。

image.png

1.2 Blockly编程环境

Blockly有在线版和离线版两个版本,在浏览器的地址栏输入https://developers.google.cn/blockly/ ,访问Blockly官网,即可体验Blockly在线编程,如图1-2所示。

image.png

离线版的Blockly无须安装,只需要在解压文件后,进入Demos并打开index.html文件,选择相应的选项即可体验。在Linux系统中,可下载TAR Ball,在终端解压文件即可;在Windows系统中,则下载ZIP File并解压即可。下载地址如下:
Github Blockly地址:https://github.com/google/blockly
TAR Ball地址:https://github.com/google/blockly/tarball/master
ZIP File地址:https://github.com/google/blockly/zipball/master
如图1-3所示即为Blockly离线版Demos。

image.png

1.3 Blockly模块功能

Blockly总共分为8个模块,学习了新的函数或者命令后,就可以使用这些模块进行练习。所有的Blockly模块都存放在在线编程界面左侧的列表中,如图1-4所示。

image.png

使用时遵循正确的语法并进行适当的缺口对接就能实现预定功能。因此,通过对模块进行适当的组织就能轻松地实现新的想法和创意,如表1-1所示。

image.png
image.png
image.png

1.4 小试牛刀—游戏:拼图

学习完上述内容,相信大家对Blockly已经有了初步的认识。接下来我们通过一个游戏来进一步掌握这种类似积木拼接的编程模式,游戏地址如下:http://cooc-china.github.io/pages/blockly-games/zh-hans/puzzle.html?lang=zh-hans
游戏规则:
① 每种动物都有自己的特征。拖动模块将动物与其特征进行匹配,并为每一种动物选择合适的腿数,如图1-5所示。
② 单击“检查答案”按钮检查是否正确完成拼图,匹配正确后,游戏结束,顺利通关,如图1-6所示。

image.png

image.png

1.5 本章练习

1.进入Blockly官网,熟悉Blockly,并使用在线版Blockly输入“HelloBlockly”。
2.在本地配置离线版Blockly,并完成Plane游戏的练习。

1.6 课外拓展

计算机语言
计算机语言是指人与计算机之间“交流沟通”的语言,它是人与计算机之间通信的媒介。目前计算机语言的种类非常多,根据其功能和特性可大致分为机器语言、汇编语言、高级语言三大类。众所周知,二进制是计算机语言的基础,而这种计算机能够识别的二进制语言就称为机器语言。如果要和计算机之间进行信息传递,就需要写一长串由0和1组成的指令序列,告诉计算机下一步该做什么、怎么做,由此可见使用机器语言是十分不便的。为了减轻这种使用上的不便,汇编语言诞生了。汇编语言是用自然语言中的一些简单的单词或符号来替代一些操作的二进制指令序列,如SUB代表减法,ADD代表加法。由于计算机不能识别这些符号,所以在执行汇编语言之前需要先将其编译成计算机能够识别的机器语言。虽然汇编语言在机器语言的基础上做了一些人性化的改进,但是它的每一条指令只能完成一个非常简单的操作,这就导致汇编程序依然非常复杂,不利于学习和开发。于是,在汇编语言的基础上,又诞生了高级语言,也就是我们现在常用的开发语言,如C、C++、Python、Java等,与机器语言、汇编语言相比,高级语言更接近于自然语言,大大简化了底层的操作指令,降低了编程者的入门门槛。
TIOBE是开发语言排行榜,它会根据当前业内程序开发语言的流行程度每月更新一次(如图1-7所示)。通过这些指数,不仅可以帮助开发者根据趋势制定合理的学习路线,而且可以帮助企业及时进行招聘、开发等方面战略部署与调整。此外,通过长期的数据对比,该指数还对世界范围内开发语言的走势具有重要参考意义。

image.png

相关文章
|
1月前
|
存储 安全 Java
小说阅读平台设计与实现
小说阅读平台设计与实现
|
2月前
对游戏设计案例杂谈1
对游戏设计案例杂谈1
|
4月前
|
人工智能 JSON C++
GPTs prompts灵感库:创意无限,专业级创作指南,打造吸睛之作的秘诀
GPTs prompts灵感库:创意无限,专业级创作指南,打造吸睛之作的秘诀
|
存储 缓存 负载均衡
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
之前给大家写了ChatGPT对接企业微信的教程,文章结尾说了教程只能适用于小规模使用,现在来写大规模使用的教程
228 0
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
|
存储 缓存 小程序
献给所有技术内容创作者~猿创聚合助手小程序开发难点解析
我重新开始了原创技术内容创作,至今在掘金发表了原创文章60篇,47.7w阅读,1.5w赞。
212 0
献给所有技术内容创作者~猿创聚合助手小程序开发难点解析
|
人工智能
带你读《少儿人工智能趣味入门动画与游戏编程一本通》之二:角色的基础:“运动”“外观”“声音”模块
Scratch是图形化的编程语言,它具有学习环境趣味性强、操作简单且直观等特点,很好适合6-12岁的孩子学习。本书是立足于Scratch 3.0版本的少儿编程入门书,能让孩子轻松愉快地掌握编程技能,锻炼和提高思维能力和创造力,为迎接人工智能时代的到来做好准备。本书以对Scratch中积木块的分类讲解作为主线,并将编程的核心思想融入大量精心设计的案例,让孩子在实际动手操作中更直观、更深刻地理解不同积木块的运用。本书对积木块的功能和用法解释详尽,语言通俗易懂,能够减少孩子对编程的畏惧心理,没有编程基础的家长也能陪伴孩子一起阅读,在融洽的亲子互动氛围中,自信、愉快地完成学习。
|
Unix Linux
带你读《Blockly创意趣味编程》之三:Blockly选择结构
Google Blockly作为一种可视化编程语言,通过类似拼图的方式构建出一个程序。本书配有丰富的案例、图片,对Blockly的基础知识、程序结构以及高级使用进行了详细的介绍。在每一章结束后都搭配一个游戏,帮助巩固本章知识,反思学习效果,更快速地上手Blockly编程。此外,每一章的课外拓展资料可以帮助了解计算机的发展。
|
开发者 算法 Linux
无标注数据是鸡肋还是宝藏?看阿里工程师这样用它 | 开发者必读(043期)
最炫的技术新知、最热门的大咖公开课、最有趣的开发者活动、最实用的工具干货,就在《开发者必读》!
869 0