Scratch/Python/C++ 少儿编程该学哪个?

Scratch

Scratch最大的特点就是简单,通过简单的拖拽,像搭积木一样来编写程序,就算是一个不识字的小朋友,也能通过积木的颜色和形状,辨识每块积木的作用,来编写程序。
因此,从学习的角度,Scratch是最符合儿童认知心理的一门编程语言。
更重要的是,Scratch并没有因为使用简单,而弱化语言的功能。
使用Scratch同样可以编写大型、复杂、酷炫的程序,特别是在图形化程序上,例如下面短短的几行代码,就可以画出任意边数的正多边形,乃至圆。这就是Scratch设计的高明之处,它的积木不多,上手容易,但经过这些积木的简单组合,往往就能实现复杂的功能。


Scratch容易上手,不意味着学不到东西,相反,它能更节约我们的学习时间;更容易让我们体会到成就感;更能够让我们集中精力放在我们要创作的作品上,能让我们更方便地理解隐藏在程序背后的复杂原理。
我们选择Scratch后,学什么、学到什么程度、和谁学,这才是关键。


Python

对初学者而言,Python和Scratch最大的不同在于编程方式,Python是一种代码式编程语言,需要我们一个字符一个字符输入,所有的代码,包括编程语句以及函数都是基于英语的,因此,在学习Python之前,掌握基本的英语是必须的。
Python是目前最流行的编程语言之一,其流行的主要原因有两个:简单易懂和功能强大。
所谓“简单易懂”,是指它可以精确表达问题逻辑,代码接近我们人的自然语言,而且Python语言自身非常精简,就好比我们汉语中的词汇一样,Python中的词汇(保留字)只有33个,非常简洁且容易掌握。
而“功能强大”,更多的是指基于Python的函数库众多,这些函数库,就好比Python的外挂和工具包,其范围涉及科学计算、医学、视觉处理、人工智能、可视化、大数据等多个领域,无论是做哪个行业的开发,使用Python总能找到强大的支持,非常方便。

Python学习真正的精髓在于,Python丰富的函数库的学习及其应用,这对于少儿编程的学习者的知识层次结构和编程基础,以及老师的水平,都要求极高。而如果零基础学Python的话,往往只是学习Python的基础语法或基本使用,很难学到Python的精髓。


C++

对于少儿编程的学习者而言,学习C++的最大意义在于,C++是信息奥赛的唯一指定语言。但是,和Scratch、Python相比,C++的学习难度更大,首先,它和Python一样,需要一个字符一个字符地输入来编码;其次C++有63个关键字,是Python的一倍;再次C++中还有很多难懂的概念,例如指针等等。
因此,如果是零基础的少儿编程学习者,C++上手会比较慢,更重要的是,C++是纯字符的,学习起来十分枯燥,这对于学习者而言,也是一个不小的挑战,能否坚持下去还要打一个问号,因为对于小朋友而言,自律和自我驱动是非常难的,兴趣和趣味对于学习的持续而言,更为重要。
而如果是小朋友通过Scratch的学习,掌握了编程中的核心概念,理解了程序后面的计算机的基本原理,并累积了一定的编程经验,那么,他迁移到C++的学习会非常容易。
例如,Scratch中有变量的概念,C++中同样如此,两者是一样的,只是表述形式不一样而已;同样的,Scratch中也有数组,C++中也有数组,等等。
如果今后不是奔着信息奥赛的话,少儿编程学习C++并无太大的意义,更何况,信息奥赛中所使用的C++还是一个阉割版的C++,例如C++语言“面向对象”等特征几乎用不上。
总之,在选择编程语言的问题上,没有"该不该"的问题,只有”合不合适“的问题,具体应该根据学习者的规划、期望、自身基础以及教师等多个方面的情况,再结合编程语言的特点来综合决策。

添加 家长论坛微信
全部 0条评论