Scratch不仅适合小朋友,程序员和大学老师都应该广泛使用!!!

去年接触到了Scratch这个编程工具,它是一种简易图形化编程工具,这个软件的开发团队来自于麻省理工大学称为“终身幼儿园团队”(Lifelong Kindergarten Group)。

网址https://scratch.mit.edu/

使用这个工具,当时我是为了教孩子们,在使用了一段时间之后,一些想法不自主的就萌生出来了。

Scratch可使大学教学更有互动性

我记得当年读大学的时候,老师都是用C在一个黑色或蓝色背景的编辑框中,敲入或输出一些非常无趣的字符。

我只想说老师,其实我就想知道游戏是怎么做出来的,怎么就出来一架飞机,它就能移动且发射子弹了。

那么这个在Scratch工具中很容易实现,可以加入一个Sprite,然后图片切换来实现物体的运动。

当时老师如果能先用Scratch来实现一个东西,然后分析一下原理,然后再代码来一通,这知识点不就联系起来了?

Scratch对面向对象的理解有帮助

Scratch绝对是面向对象编程入门的神器。因为代码都是写给每个对象的。

这样能很好的使你在思考程序实现的时候,只考虑当前对象应该有的行为,而不是老想着在某一个对象里去直接控制其它对象行为。

在Scratch里对象的行为都是靠“事件”来驱动的,这样你能很好的理解事件的概念。

在Scratch中对象都是独立的,松耦合的,那么对象直接的协作主要是通过“消息”来控制,这样你也能很好的理解消息的概念和工作方式。

Scratch是个很好理解程序语言的工具

在scratch中你会经常需要用到变量循环判断,和方法定义来实现一些功能。

扩展模块,其实就是用来定义函数,这样能使你更好的理解函数的使用方法,使用场景和使用函数的好处。

用来理解递归也比java等代码来得直观。

Scratch是个很好的建模工具,使你关注于编程逻辑而非语言本身

有时候为了解决某个问题,你有个很好的算法。

但是为了验证这个算法,你需要将其用C,C++或java等其中某一种语言来实现。

由于你不太熟悉编程语言语法以及它提供的方法,使得你花很多时间来编写程序,有时甚至运行不起来。

你原本目的是验证算法,然而大部分时间都花在了熟悉编程语言,以及debug上面。是不是很得不偿失?

Scratch使用模块拖拽,你不再需要关注语言,语法,而更多的是算法,建模。

如下图的:冒泡排序

思考用Scratch将逻辑可视化

其它的编程类工具,要实现解释一个算法或原理,一般都很晦涩,学生很难理解。

如果能用图形化界面,编程之后,让它动态的显示出来,那就生动得多了。

还是上面排序的例子,如果将上面的数字,转化成图片,然后图片根据算法动态的一轮一轮交换位置,最后排出想要的结果。

这个能让学生更直观的掌握排序或其它算法。

“搜索算法”和一些“贪心算法”,“动态规划”等都出现在了我的脑海中。

我深深的觉得,Scratch这种形式的可视化编程工具,会让更多的人进入编程行业,编程语言将不再是障碍,也许未来编程就是这样。

想想可视化的代码和数据库建模工具吧,是不是就是在朝这个方向发展啊。

最后(思考一下):“N.Wirth(沃斯)提出,程序=数据结构+算法.数据结构指的是数据与数据之间的逻辑关系.算法指的是解决特定问题的步骤和方法.”

上面提到了数据结构和算法,并没有提到编程语言,编程语言只是实现程序的一种工具,

所以“程序员,程序员,要会数据结构和算法的才能算得上程序员,只会敲代码的那就是码农,不是程序员!”

这让我理解了,为什么很多公司后来不喜欢招那个“xxx鸟” 机构培训出来的学员了~~

P.S. 2018年的总结忙得忘了写了,人就是这样,过了那个点就不想补了:)

这篇是最近脑海里的想法,写于2019年农历初四~~

再过10多分钟,迎财神咯~~

补一句 scratch 3.0 加入了 摄像头互动,乐高机器人控制,以及语音互动功能。这也告诉了我们人机交互,增强现实,软硬结合将是趋势~~

原文地址:https://www.cnblogs.com/michael703/p/10356918.html

时间: 2024-11-09 09:43:37

Scratch不仅适合小朋友,程序员和大学老师都应该广泛使用!!!的相关文章

你适合做程序员吗

不是每个人都适合做程序员. 从小学到高中,我们接受的都是应试教育,而缺对少养学生的兴趣进行培养.当我们要进入大学选择专业的时候 我们茫然了,大部分同学都不知道自己喜欢什么专业,也不知道这个专业以后是做什么的!这样就会导致很多同学只 能按照自己父母的意志选择专业或者看目前社会上热门专业来选择,根本没有根据爱好.兴趣考虑过自己是否喜欢这 个专业,随大流的选择.没有上大学之前,高中老师都会说好好学习到了大学你们就解放了!果不其然,到了大学同学们压抑已久的荷尔蒙都得到了释放,各种玩可以说整个大学在一个"

什么样的人不适合当程序员

软件蚕食一切.未来属于程序员.在郴州找工作的求职者有很多都想找程序员的工作呢.人人都想当程序员.但是并不是每个人都能当好程序员.在你做出决定前还是先看看自己能不能当好程序员吧.可是什么样的人不适合当程序员呢?不要喝鸡汤,我们看看Quora上面是如何回答的. 其实最重要的是态度: 我认为编程要想成功最重要的是态度.当然,最低水平的智力还是要的.以我这么久的经验来看,还没见过蠢到不会做的. 但是好坏程序员之间的差别几乎永远是态度. 耐心:对我来说这是最重要的一条.写代码和调试极其令人沮丧.要想做好,

为什么程序员预估的时间都不靠谱

http://www.aqee.net/why-programmers-are-bad-at-estimating-times/一个我曾经共事过的很有经验的项目经理曾宣称说,他会拿程序员估计出的时间乘以π值,然后再提高一个数量级,这样得出的才是正确的开发所需要的时间.1天时间经过变换后是3.14周.他经过惨痛的教训才认识到程序员预估的时间都是不靠谱的.为了能更精确的对程序员估计的时间进行换算,我创建了一个时间换算表,重点说明究竟是什么地方出了问题. 估计时间 程序员的思考 程序员忽略的事情 真正

第3章:我是程序员-回忆大学(二)

也许今天的你,就这样子混过了一天又一天,可是,突然有一天,你会发现,你怎么对待今天,未来就会怎么对待你,所以,莫言这些天每天晚上都在失眠,他会因为自己某一天的不努力,而觉得今天好像过的毫无价值,他的心里总是有那么一丝胆怯,于是,他强迫自己每天都在成长,每天都在学习...在大学的生活中,莫言计算机基础-打字这关其实已近过关了,比起以前打字还要一个一个看字母打字要好的多了,甚至,班上的好几个同学已经发现了莫言竟然很快的会盲打了.....大学有时候,真的是很有意思的,也许,只有莫言,才清楚的知道,自己

十二星座哪个更适合做程序员?

原文链接 程序猿是一种常年处在被黑-自黑状态中的生物,他们的大部分时候都贡献给了他们热爱的代码事业,虽然大家都是程序员,但即使是同一种语言,每个程序员各自写起代码来还是有很多的不一样的,这或许和他们的星座和性格有很大的关系~ 处女座向来是被大家黑的比较惨的星座,但是如果是写代码,"完(jiao)美(zhen)"的处女座却变成了无数大公司欢迎的CTO种子级别选手!真是十年被黑一朝翻身! 说到白羊座,怎么可能看到一整段白羊座程序员写的完整代码!他们的电脑里大概存了三万多个文档,都是极其美妙

女生到底适不适合做程序员?!

世界上第一个程序员是女性作为一个STM32的菜鸟级人物,我刚开始接触STM32时,其实和当年开始学习51单片机的心理是一样的.茫然,谁说不是呢?但是,正常的学习途径无非就是看书,然后敲代码,最后烧程序,有问题就check,然后再继续烧,我都怀疑我快成了火头工.因为在我的印象中,只有这类职业才和"烧"有着密不可分的联系.即使当一名敬业***的火头工是我毕生的梦想.OK,不侃了.我希望,通过写日志把我作为一个菜鸟在学习STM32中的问题记录下来,同时以我为鉴,规避那些没有必要的破事. 学习

那些拼命加班的程序员们,后来都怎么样了?

阅读本文大概需要 5 分钟. 作者:黄小斜 小张是个 80 后程序员,典型的技术人,他非常热衷于技术,对代码有着独特的追求. 小张属于踏实肯干的程序员,在公司工作兢兢业业,也干出了很不错的成绩,当然,与之伴随的是,加班成为了家常便饭. 公司还不错,算是一个比较有潜力的成长型公司,转眼间,他已经在目前这家互联网公司干了七年了,自己也算是技术骨干,手下也带了一些新人. 只不过曾经的小张已经变成了老张,发际线也已经移动到了无法自拔的境地. 回想起小张刚进公司的时候,意气风发,大有初生牛犊不怕虎的姿态,

.Net程序员面试 每个人都应知道篇 (回答Scott Hanselman的问题)

昨天回答了Scott Hanselman在他清单上关于C#那部分的题目,.Net 程序员面试 C# 语言篇 (回答Scott Hanselman的问题),今天接着回答他在清单上列出的"每个写代码的人都应该知道"部分的题目. 1. 描述线程跟进程的区别 (Describe the difference between a Thread and a Process?) 进程是指处于运行状态中的程序, 例如在windoe 环境下Ctrl + Alt + Delete 可以看见此时本台wind

java/python/php/android/ios/前端程序员视频教程,全部都在这里了,应有尽有

内容付费 知识付费 Make your content more valuable 内容付费,让知识更具价值 所有资源打包链接:https://www.fageka.com/sell/FxXXLXM1431 编程: 程序员文档教程合集--java/php/ios/android等多种文档教程,各种设计思维.各种电子版教程应有尽有,都在这里了:https://www.fageka.com/sell/zRBQada0604 java打包链接--包含java所有资料,含Hadoop:https://w