随着计算机和智能设备的普及,尤其是最近人工智能的浪潮,让计算思维和编程技能让公众越来越意识到其重要性,美国更是在奥巴马的时期就在推广让每个学生都会编程。Scratch就是在这种趋势下诞生的。
Scratch是麻省理工学院媒体实验室的终身幼儿园组(The Lifelong Kindergarten group)设计和维护的一个编程语言,这种语言主要为8-16岁的用户设计,面向的是一些编程初学者。
Scratch作为一种编程语言,由于其采用了模块化的设置,极大降低了学习一门程序语言的门槛。所有语句都被封装在一个个图像块中,你只需要将这些模块拖出来,像搭积木一样放在一起,它就会根据你的设计工作。
Scratch的界面,所有程序都是模块化的当然如果你觉得Scratch仅仅是一种程序语言,那就太小瞧它了。我认为,在这么多编程语言中,Scratch能够有持续的生命力,是有其自身的原因和优势。
首先,这种程序不仅仅被研发出来,还有持续的研究,包括宾夕法尼亚大学、哈佛大学、华盛顿大学、微软、加州大学等很多大学和机构在持续研究用户使用的情况,这些研究都是一个项目的基础,能帮助其不断进行改进。
Scratch设计原则
门坎低和应用广
为了让Scratch 在广度和深度能交互作用,我们明确地把它组件和功能弄得较简单,让孩童容易上手,但也足以支持多种用途。
让它尽可能的简单:简单到不能再简单
为软件添加很多很多的功能,是常见的产品型态。但是我们也发现,减少功能数有时反而改善了用户体验。也许一开始接触会觉得被约束或限制,但反而可以促进新的创造形式。
多种途径、多样风格
过去,很多数学和科学活动偏向特定群体。我们开发Scratch 时特别注意它的易用性和趣味性,希望以此消除使用门槛,让大家与数学、科学更亲近。
为动手能力而设计
我们相信,学习本身就是持续改进的历程。从玩得尽兴进而探索、试验,然后修改、完善他们的目标和所创立的事物。为了让这种持续改进历程能够被持续,我们设计了Scratch,让人们使用它的时候不自觉地持续改进,让学习效果更加倍。
其次,这种程序的输出非常形象化,与其他程序相比,Scratch的输出结果是互动媒体,比如一个故事、游戏、动画。这样培养的就不止是编程思维了,而是创造力、想象力。终身幼儿园组的负责人认为,幼儿园是一个人学习兴趣最浓和学习方法最好的时候,所以他们将其中的教育方式和理念融入到了Scratch的设计中,保证了其有趣。
Scratch学习原则
项目
人们在积极开展某个项目时会经历:灵感浮现、原型设计、产品诞生、改良进化一系列的历程,这样所得到的学习成效是最大的。
热情
当人们专注于感兴趣的事情上时,他们会更努力、更愿意花时间在其中,在面对挑战时也更能坚持,当然,也会在过程中积累更多的能力。
共享
和其他人交换想法、协同制作项目、在其他人的项目基础上改编…藉由社交活动促进学习力。
玩乐
在有趣的实验中学习,体验新鲜事物、把玩可用素材、测试程序极限,在一次次的冒险中屡败屡战。
第三,这个程序是免费和开源的。免费就能保证更多的人可以使用它,目前有40多种语言的版本,有150多个国家在使用它。开源就意味着,很多开发者都可以看到它的源程序,可以在其基础上做一些改进,所以很多公司都开发了改进版的Scratch,以连接自己的产品。因此它是学生和学校使用最多的一种程序。
所以我在考虑如何带李子学习编程的时候,对很多程序语言进行对比之后,选择用Scratch。开这个专题的思路,是将我带李子用Scratch进行尝试的过程记录下来。
我的所有学习资料都来源于Scratch的官方网站和官方论坛,这些网站有一部分已经汉化了,包括一些教材,但是汉化的程度不够高,我会根据自己的理解改编一些内容,作为指导李子编程和创造的手册。
附录:
关于Scratch:https://scratch.mit.edu/about
Scratch离线编辑器下载:https://scratch.mit.edu/download
网友评论