本文主要解答了如下几个问题:
最近几年少儿编程开始讲Python课的年龄在不断提前,从以前的初中,到两年前5、6年级开始、再到今年有机构推出从小学2年级开始学Python。
究竟什么时候开始学Python最合适呢?我建议零基础的学生可以从5年级开始,有较扎实图形化编程基础的学生可以从4年级开始。具体原因如下:
我不鼓励在很小的年龄就接触Python编程,一方面学生生理因素导致在1-3年级学一年的东西,可能在5年级只要一个月就可以全部学会并学得更好,低年龄学习效率极低。
另一方面过早接触Python会让很多孩子对Python产生厌恶与恐惧,这大概就像让初中的学生学微积分一样,虽然有小部分孩子可以学好,但对大部分学生来说,只会在一次次挫折中丧失对编程的兴趣。
目前市面上的少儿编程Python课程体系大部分是在1-2年从Python基础语法到pygame游戏设计、网页开发、爬虫、应用开发、人工智能/大数据等。与成人Python培训非常像,有一些机构甚至就是直接拿成人Python课程大纲,将知识点分散删减,然后直接作为中小学Python课程体系。
那么究竟是什么导致了这种课程体系的诞生呢?
正所谓有需求就有市场,成人Python课程体系降维直接给中小学用这个现象,主要是因为有很强的Python课程需求,而教育机构真正懂Python的不多,而懂Python的很多不懂教育,导致了这种Python课程体系的诞生。
这种体系其实只适合少部分天才,而这也是为什么很多机构里从图形化编程或机器人编程升级到Python课程时,会有较高退课率问题。
那么这旺盛的Python需求从哪里来的呢,其主要由如下几个原因导致:
在回答这个问题之前,我们可以来看一看目前最早将Python纳入教材的几个省市的Python相关教材知识树。
从上面不难看到,初中掌握基本的Python知识是主流,不论是政策里多次提到高考纳入Python或是类似的政策消息里对学生的Python能力要求其实并没有那么高。
所以,我建议不要刻意攀Python知识树,而是将Python仅仅当做一个解决问题的工具,小学阶段只讲解简单的Python语法,不要系统地讲爬虫、网页设计、大数据分析等内容。
不是因为Python能做什么所以去学习什么,而是因为学生要实现的功能恰好可以使用python制作,所以学习Python。
前面已经提到小学阶段建议只学习基本Python语法,但这也带来了一个很严峻的问题,那就是学生会感觉Python学起来很无聊。
所以怎样学Python能让学生保持兴趣、培养综合素养就成了一个非常关键的问题。目前国内有两种模式是我比较认可的,一个是游戏化Python,一个是结合硬件Python。
这里的游戏化Python是指类似Codecombat这种,通过Python代码控制游戏中的角色运动,执行对应动作,从而不断闯关。
目前市面上还有通过封装库实现纯软件人工智能Python入门的,也就是把百度AI等API进行封装,从而实现一行指令实现一个功能,类似于上面的游戏Python中的指令形式。
不过那种纯Python的,在入门后很多都是开始学网页设计、爬虫之类,所以我不太推荐。那种通过封装实现Python趣味入门是很不错的想法,但是在入门后怎样兼顾学生学习能力、学习深度、学习趣味性是个需要慎重思考的问题。这个问题不解决,很容易让学生在入门后火速放弃,课程渐渐变为奥赛式培优课程。
硬件Python指的是将Python与电子元器件、结构件相结合,驱动学生学习的是项目,Python是解决问题,实现功能的一个工具。Python有一个精简版叫做microPython,可以运行在microbit等硬件上,硬件Python的学习用的就是microPython。
因为Python控制硬件一般是通过类/函数的形式,所以只需要学习基础的Python语法就可以轻松控制各种各样的电子模块。
这种模式下最重要的是场景的设计,一个好的场景赋予了学生学习动力,培养学生问题解决、计算思维、逻辑思维等综合素养。其实也就是以STEAM教育的理念,开展项目式Python教学。
单纯说可能有些抽象,下面是我以前设计的一个硬件Python课程,课程中学生会根据任务需求,改造小车结构并使用Python编程控制小车在地图上完成各种任务。
这里单纯就硬件Python类课程设计为例,它最重要的是学习场景的创建,课程设计需要遵循如下几个重要的准则:趣味性、梯度化。
课程一定是有趣的,这个有趣可以是通过课程内容体现,也可以是通过精妙的课程环节体现,最终呈现的结果就是学生上这个课,觉得这个课有趣。
在图形化编程类课程中这一点很容易做到,但在Python课程中这一点常常被忽视。小学阶段培养学生的学习兴趣永远是最重要的目标之一。
学生后面还有很多很多时间,如果在小时候就丧失学习兴趣、潜意识里将学习Python与失败、挫折、困难等建立联系,那么这个学生以后接触Python时会有天然的厌恶和讨厌。
这里的梯度化指的是设计的课程难度要缓慢提升,通过课程帮学生从平地慢慢地一步步走上Python知识树。
这里最重要的一点就是在讲解同一个较难的知识点时,将其根据每次课的需要拆解为多次讲解,缓缓推进,让学生脑海中对该知识的形象渐渐丰富。
避免在第一次讲解时,就将这个知识点纵向挖到底,这种形式对成人来说或许挺不错,但是小学生的学习能力及其有限,他们更需要学懂一点再继续向后学。
单纯从某一个学期的课程开发来说,可以参考如下环节进行课程开发,如果是要开发Python课程体系就是另一个流程了。
Finally,谢谢大家的阅读!祝每天开心~
版权声明:本文为博主半原创文章,未经博主允许不得转载。
微信赞赏
支付宝赞赏
发表评论