Scratch作为一个图形编程语言,有入门快、容易理解的特点。是少儿编程的首选语言。大家对scratch多是满满的赞赏,今天,我们就站在一个严格语言的角度上在鸡蛋里挑挑骨头,看看scratch有哪些*缺点*。
![](https://s1.ax1x.com/2018/08/25/PHYIJS.png)
**1. elseif**
scratch拥有:*如果...那么* 和 *如果....那么....否则* 两组条件积木。
一些简单的逻辑判断足够使用。但是需要使用elseif场景的时候就变得很麻烦了。看下面的例子:
![](https://s1.ax1x.com/2018/08/25/PHYoRg.png)
**2. 函数没有返回值**
scratch的自定义积木本质是一个函数。但是scratch的自定义积木没有返回值,只能使用全局变量的方式。我们知道,这种形式会有很多弊端:1)没有数据隔离,容易引起bug 2)逻辑不清晰,输出结果往往要在函数过程中加工好。看下面例子:
![](https://s1.ax1x.com/2018/08/25/PHYTzQ.png)
**3. 下标从1开始**
这个也不算缺陷了,只是正常的编程语言下标都是从0开始的。这个常常会造成误会。
**4. 对复杂逻辑不友好**
我们来下下面的一个if条件,如果不仔细看,你能猜出它的成立条件吗?
![](https://s1.ax1x.com/2018/08/25/PHYbss.png)
**5. 缺乏高效的调试机制**
当我们的脚本出错时,除了一遍一遍的审查积木,没有特别好的调试方法。
## **瑕不掩瑜**
上面虽然说了说了scratch的种种缺点,但是作为一门编程科普语言。scratch已经是事实的标准了。这些限制对入门学习编程也没有太多的障碍。通过scratch培养逻辑思维、编程思想还是非常贴切的。
![](https://s1.ax1x.com/2018/08/25/PHYqLn.png)
当然,通过scratch掌握好编程原理后,我们可以投入更多的精力学习python、JavaScript等严谨言语,真正走入编程的世界。
- 空白目录
- 8.21 做自媒体我学到了什么
- scratch技巧分享系列-调试技巧
- 8.23 论scratch的缺陷
- 9.4 孩子为什么要学编程
- 9.4 好榜样
- 9.12 python a-z
- 开发网页很难吗?
- 9.14 用python识别微表情
- 9.14 todo,给孩子搭建一个自己的网站吧
- 9.16 scratch模拟台风
- 9.17 python好文分享-列表详解
- 9.17 台风怎么形成的,阿达老师做给你
- 9.18 阿达老师科学课-什么是生物
- 9.18 进位加法怎么做?阿达老师用Scratch教给你
- 9.19 树叶为什么会变黄?和阿达老师一起看下
- 9.19 用Scratch做100以内的减法
- 9.19 小草和山羊的斗智斗勇
- 9.19习大大主持开幕的人工智能大会讲了啥
- 9.24 中秋节的月亮为什么那么圆
- 9.27 编程还可以写歌?你没看错
- 10.10
- 10.11 用编程玩物理-什么是引力
- 10.16 jupyter使用
- 10.17 什么是火
- 1024 长度换算
- 你会叠飞机吗
- 和孩子们一起做绘本-沙漠版小红帽
- 一分钟学编程系列-下雪啦
- 一分钟学编程系列-光合作用
- 一分钟学编程系列-挂满礼物的圣诞树
- 一分钟学编程系列-太阳系里的星球(一)
- 一分钟学编程系列-太阳系里的星球(二)
- 为什么学生不喜欢上学(二)-事实性知识的重要性
- 为什么学生不喜欢上学(三)-为什么学生能记住电视里的所有细节, 却记不住我们告诉他的任何知识?
- 为什么学生不喜欢上学(四)- 抽象概念为什么这么难
- 一分钟学编程计划-圣诞节的礼物派对
- 一分钟学编程系列-火星营救(一)
- 为什么孩子不喜欢上学(五)- 题海战术有用吗
- 为什么孩子不喜欢上学(六)- 思考的秘诀是什么