孩子学编程,作为教育者该如何选择编程语言?
我最常被老师和家长所问到的一些问题是:我应该选择哪一种编程语言来教孩子编程呢?坚持选择像Scratch这样的图形化编程语言作为开端很重要吗?应该在什么年龄转换到学习代码编程呢?还有我应该如何在Python,Java,还有JavaScript之间选择呢?海风教育退费
海风教育在线辅导0元一对一试听课等你来领取,领取课程方法:
1、私信留下您的手机号和姓名,需要补习的科目。
2、也可以在海风教育官网留下您的手机号领取 https://www.hfjy.com
经过将近10年,对成百上千个学生教授编程,我经常出席各种会议,或为刚接触计算机科学的老师举办讲习班。许多老师都是第一次尝试在他们学校里建立计算机科学课程,所以他们对于选择编程语言的谨慎,是可以理解的。除了试图找出最适合他们学生的东西外,教师讲授的内容还必须在授课舒适度,以及校园、学生、家长四者之间取得平衡。
那“合适”的编程语言,真的存在吗?
编程语言不是重点,编程中的概念才是!
就像你猜的那样,答案自然是否定的。编程语言不是重点,但教导孩子如何利用编程去解决问题才是重点。理解如何一步一步地建立算法,从而搞定作业,再想出最佳的思路来编写代码,这可能才是最困难的部分。
学习相当少量的关键词和特定编程语言的简单语法很简单——比学习一门真正的口语语言要容易得多!相比而言,为了独立完成编程,必须了解编程中变量、列表、条件、循环,还有函数中的基本概念,然后才能知道何时,何地,如何使用它们将算法转换为代码。
一个学生一旦掌握了以上这些概念,并且以一种语言编程成功,这时再用另一种语言来编程就不难了。转换编程语言并非打个响指一样容易,但确实可以做到。
话说回来,掌握的第一种编程语言会改变将来思考和编程的方式吗?学习当下行业里最流行的语言重要吗?
2018年美国热门编程语言Top10【图源: YoungWonks】
编程语言变化不定,你终将适应
编程语言的流行度会变,没有人敢保证我们今天教会孩子的东西,在他们进入职场的时候还适用。我学习的第一门编程语言是Pascal(对,你可能得百度一下)。
多年以来,我使用过不同的设备来学习不同的语言——其中不乏一些晦涩难懂的。在作为教育工作者的这10年里,我学习了Logo,Scratch,Processing,JavaScript,Arduino和Python的一大堆知识,好让我能在课堂上大展拳脚。
6年前,我建议孩子们从学习Logo开始,一门最早应用于计算机科学教育当中的编程语言,而我相信,它就算放在今天,也依然是一个颇具影响力的选项。划重点:如果你能教会孩子们基本的编程概念,他们也能在一门语言上花上足够的时间,他们理论上就已具备了日后转换语言的基本条件。
这还有一条经常提到的问题:我们总是应该优先教会孩子图形化编程,而非代码编程吗?
图形还是代码?
差不多10年前,在一节六年级数字设计课上,我开始使用Scratch,一门也许是最流行也是对孩子最友好的图形化编程语言。我随后将这门编程语言拓展到所有年级。我对不久前刚发布的Scratch 3.0中新功能感到兴奋——尤其是文字转语音和文字翻译这两个拓展功能。
图形化编程的出现,极大减轻了青少年对编程的挫败感,诸如漏掉一个逗号或者忘了把右括号补上之类,反而让他们留有更多时间来理解当中的概念。另外,Scratch对于创新的鼓励以及在图像创作、声音编辑、分享和项目混制方面的功能优化,让它在成为各年龄段孩子首选编程语言上变得理所当然。较之被称为“编程语言”,它更希望被定位为一个绘图工具,一个动画制作工具,或是一个故事与游戏创作工具,这些元素综合起来,让Scratch变得更友好而不唬人。
我发现在使用Scratch几年后,学生更愿意去尝试代码编程,因为他们觉得那意味着长大,只有“真正的编程”才会被行业采纳。我还见证过语言的转换中,有时只需要给孩子们回顾一下例如变量和循环的概念。
我的中学学生们愿意为学习代码编程付出额外的努力,通常他们会放慢速度,以保证在处理Python,JavaScript,Arduino和Processing挑战时不犯下拼写和语法错误。不过,学生一旦能够通过刚开始时“我得看着点有没有打错字”阶段,他们常会爱上代码编程的灵活性和可塑性,尤其是当他们发现复制、粘贴,协作和修改在代码编程中有多方便时,偶会发出“也没想象中那么糟嘛”类似的感慨。
每年夏天,我在Foothill College KCI计算机科学合作课程上,都会分别用Scratch和Python两种语言,为教师展示同一个项目。他们爱看把两种语言放一起比较。我们甚至会以伪代码,或者叫流程图作为开始,把完整算法在开始编程前先写下来。
这是一个检查密码的迷你项目,它在流程图,Scratch,和Python中,分别长这样:
密码检查器流程图
用Scratch展示的密码检查器
用Python展示的密码检查器
我课堂中的老师和学生在没接触过图形化编程的前提下,都能轻松学习Python,这说明好项目在前,从代码编程开始学习同样行得通。
是什么让一门编程语言,变成适合孩子学习的编程语言?选择一门语言的标准是什么?
虽然知道教授编程,更多是关于它的概念,你也知道不需要再为作出完美的第一次选择而慌乱,但问题依然没有得到解答:什么因素让一门编程语言成为孩子学习编程的好选择呢?通常由以下几点来衡量:速度,应用,可用的库,行业支持。下面我再来说说我认为重要的几个标准。
它有强大的教育者社区吗?
我频繁提到Scratch和Python的其中一个原因是他们都有附属的线上教育者社区。他们拥有如此庞大社区,背后的原因是他们总是以免费的形式,开放的姿态,接纳来自世界每个角落的用户。拥有庞大的社区,意味着你能找到更多资源,诸如项目、教案、教程、视频和书籍一系列为课堂而设的材料。
学起来好上手吗?
有许多代码式编程语言可供选择,一些在当今的科技行业中更吃香,一些有特别的功能方便他们创造特定的项目。虽然说许多高中生最终不得不为通过计算机科学进阶入学考试(AP Computer Science A)而学习Java,但这一定不是最简单的语言。Python目前看起来更简单,并且凭借着它简洁直白的逻辑,在教育界中越来越受欢迎。在我将Python用作计算机科学选修课语言3年后,我依旧会被它完成工作的效率,以及中学生用它编写代码的速度所震惊。受到Python在教育孩子编程方面的启发,我花时间写了一本关于它的书。
它背后的设计理念是什么?它是为这个年龄段的用户所设计的吗?
为用户设计适合其年龄的工具很重要,编程语言可以根据它不同年龄段的用户展示或者隐藏相应的功能。Scratch,扎根在培养孩子的创造力表达上,刻意将一些功能性代码以封装的形式呈现出来。ScratchJr.是为还在识字的孩子而设计的,所以它没有变量和条件这些对这个年龄段孩子来说太难理解的功能。Python为不同类型的项目提供扩展支持,但这些额外的扩展都需要你亲手把它们添加进来,这样它们就不会在你不需要的时候出来干扰视线。为更大的学生所用语言一定要含括对debugging的支持,基本操作了。如果讲授“面向对象”编程是重点环节,那使用Java教学就是一个好选择。
容易安装吗?能跨平台运行吗?
这些都是要记在心里的东西,尤其当学生需要回家编程时显得更为重要。一些语言只能在特定环境中工作,譬如Apple的Swift编程语言。如果学生在Chromebook上编程,那么有一个稳定的,基于浏览器的工具就更加关键。需要考虑的另一个问题:这个语言能让学生回到家中也免费使用吗?还是有一些隐藏的扩展需要付费方才解锁?
能否轻松地在社区中分享项目?
Scratch背后其中一个基本元素就是社区,让孩子们互相分享,相互学习。这个社区对教师们来说也同样重要。不过,分享也要有计划:何时分享,允许学生分享多少内容,评论和修改他人的作品等。也许把JavaScript作为第一门代码式编程语言进行学习会让你大皱眉头,虽在易用性和上手难度上都不如Python,但它的优势在于它是属于网络的脚本语言,只要把项目发布到校园网服务器上就能展示给大家看,方便又快捷。
撑起Scratch的一个重要基本元素——社区
选择编程语言时要考虑的方面还有很多。这个项目能用到什么语言?不同的语言可能支持不同类型的项目。举例来说,Processing和P5.js让制作动画变得更轻松;Python把复杂的数据分析甚至是机器学习变为可能。老师们也可能更倾向一个强大的课堂工具,便于管理作业和批改成绩,尤其对小组项目而言。
一个最经常被问到的问题是:“这门编程语言现在流行吗?”流行度对于学生选择学习一门编程语言来说有很深影响,也不难理解家长希望孩子能掌握对未来职业有利的技能那种心情。无论如何,教授良好的编程习惯胜过教授流行编程语言。
虽然我们可以强调要找到“完美”的编程语言,但我们不要忘记,最终的目标是让学生探索基本的编程概念。他们或许在你的课后就不再插手编程,你教的语言在他们长大后也可能变得过时,重要的是,教授编程将会帮助学生理解计算机是如何解决问题,收获批判性思维技能,并希望他们有朝一日洞察到,用代码创造东西的乐趣。
孩子学编程,作为教育者该如何选择编程语言?相关推荐
- 编程入门python语言是多大孩子学的-包头孩子学编程python好吗
包头孩子学编程python好吗,学习少儿编程就选童程童美,童程童美专注3-18岁少儿编程教育.历时多年,形成了以创意启蒙课程.人工智能编程.智能机器人编程.信息学奥赛编程等课程为核心的一站式编程教育平 ...
- python多大孩子可以学_孩子学编程最佳年龄是多大
儿童编程教育已经悄悄地掀起了编程低龄化的热浪.但是很多人会疑惑,到底孩子学编程最佳年龄是多少呢?下面小编就为大家解答一下. 孩子学编程最佳年龄 首先,孩子的学习黄金时期是非常重要的.从6岁开始,大多数 ...
- 5岁自学python编程-一张图告诉你孩子学编程怎么选
原标题:一张图告诉你孩子学编程怎么选 [5秒Get本文干货] 1. 少儿编程应7岁开始学起. 2. 少儿编程不一定是孩子未来的职业,更应该是一种生活技能和态度,一种思维方式和语言. 3. 正常学习使用 ...
- python能参加奥赛吗-【家长必读】孩子学编程能参加哪些高含金量的比赛?
原标题:[家长必读]孩子学编程能参加哪些高含金量的比赛? 随着人工智能的发展,机器人.智能化越来越普及,获得越来越多的家长关注. 从AlphaGo与棋王柯洁的对弈开始,AI(人工智能)与人的关系就已经 ...
- 小孩子学python有什么用途和价值_小码精灵:为什么让孩子学编程是最有价值投资...
原标题:小码精灵:为什么让孩子学编程是最有价值投资 (小码精灵编程课) 时光永远不会逆行,把握属于自己的每一天. 现在的孩子,除了白天基础课程的学习外,还要奔走在各大培训班之间. 家长们认为,让孩子在 ...
- 孩子学计算机编程有用吗,孩子学编程有用吗?
原标题:孩子学编程有用吗? 当孩子可以轻松自如地修改后台代码,做出让家长为之惊叹的小程序:当我们误以为孩子会痴迷游戏,实则更好奇游戏的实现原理,而对玩游戏本身更加理性:当孩子们通过编程学习,不仅功课没 ...
- 孩子学计算机最佳年龄,孩子学编程最佳年龄是几岁
孩子学编程最佳年龄是几岁2021-01-18 16:58:11文/董玉莹 孩子学习编程的最好是几岁?本文整理了相关内容,欢迎阅读. 孩子学习编程的最好是几岁 6-18岁!从国内外的典型案例来看6-18 ...
- 孩子学计算机最佳年龄,孩子学编程最佳年龄是多少
随着IT技术几十年的发展,编程也正变得越来越简单.易用,而不再是那么复杂.繁琐.那么孩子学编程最佳年龄是多少呢? 孩子学编程的最佳年龄 3-5岁的儿童可以先进行少儿编程语言启蒙,正式学习编程建议在上小 ...
- 《趣学JavaScript——教孩子学编程》——第1章 认识JavaScript1.1 认识JavaScript
本节书摘来自异步社区<趣学JavaScript--教孩子学编程>一书中的第1章,第1.1节,作者: [美]Nick Morgan(摩根)译者: 李强,更多章节内容可以访问云栖社区" ...
- 《趣学JavaScript——教孩子学编程》——1.5 本章小结
本节书摘来自异步社区<趣学JavaScript--教孩子学编程>一书中的第1章,第1.5节,作者: [美]Nick Morgan(摩根)译者: 李强,更多章节内容可以访问云栖社区" ...
最新文章
- Tensorflow学习笔记6:解决tensorflow训练过程中GPU未调用问题
- 【java】解析JToolBar类的使用
- 【Paper】2022_基于无人驾驶地面车辆的多Agent系统仿真平台的设计及编队控制协议的研究
- hadoop使用lzo压缩文件笔记
- mysql 怎么登陆远程服务器_教你手机怎么远程连接云服务器
- 如何在 SAP CRM WebClient UI 里在 Context node 上下文里访问其他 Context Node 的数据
- multiprocessing.queue取数据要加锁么_干货 | 小程序多页面接口数据缓存
- 帆软地址栏传参,实例
- java中timer和timertask_使用Java中的Timer和TimerTask
- [JS3] 立即执行JS
- mysql索引的创建和删除吗_MySQL索引的创建、删除和查看
- mybatis框架搭建学习初步
- 【BZOJ】3495: PA2010 Riddle
- 码栈使用手册(二)---界面介绍
- 云计算就业薪资怎么样 如何加入云计算行列
- curl命令及其API 的使用
- 快手如何通过算法和算力支撑用户的增长
- 几个超赞的颜色搭配网站,非常实用!强烈推荐!!
- 基于Web实现网络拓扑图
- 我 Spring Boot 贼 6,还有必要学 SpringMVC 么?