少儿编程网
一般情况下六岁以上的孩子可以选择Scratch或其它同类的程序设计语言入门,用鼠标简单拖拉指令模块就能编程,降低学习的门槛,提升孩子学习编程的兴趣。
我们基地学员有个6岁的女孩,刚来的时候鼠标都不熟练,老是坐不住,通过一年左右Scratch的学习,孩子现在能静下心来编程,经常把角色涂得很漂亮,有时候也在代码中加入自己的创意想法。
很多学生,自己编出来的小游戏,虽然游戏的效果没那么好看,但玩得不亦乐乎,有的学生自己绘制作色,他们可以修改程序代码改变游戏规则,也可以自己绘制关卡背景,设置自己喜欢的音乐,修改代码不断提升难度,下课了还不肯离开课室。
中国少儿编程网联合国际计划公益机构推行《女童-科技行》就是唤起社会对女童的偏见,他们的口号是“Technology,girls can!”,女孩子们通过学习增强了自信,她们只是在兴趣点上与男孩子有所差别,这就需要家长或者老师更好的引导,因材施教。
有些城市有专门的儿童编程线下机构。关于选择哪些线上线下资源的学习,这个家长们自己判断,由于少儿编程是个新兴市场,市场上也是鱼目混珠,师资参差不齐,收费标准也不一样,这些需要家长擦亮眼睛深入了解。其实青少年编程最重要的是让孩子真真正正理解程序设计的逻辑,树立计算思维模式。
来学习的孩子中,好些都是一二年级的,别看他们年纪小,自己会用拼音打字,一个学期下来,键盘输入都快了很多。最重要的是通过编程学习,能激发他们脑海中的创意思维,这才是编程学习的核心内容。
Scratch:
Scratch简单易用,由美国麻省理工学院开发,专门的儿童编程软件,适合编程启蒙教育,而且很多机器人硬件编程也支持Scratch,扩展性非常好,最主要是孩子能很快上手,迅速做出自己的作品,提升学习的趣味性和自信心。
Python
Python作为人工智能研究领域最火的语言,其扩展库非常丰富,可以做游戏,也可以做网络爬虫,数据库开发,甚至复杂的人工智能系统,语法比较简单,也很容易跟其它语言进行混合编程,有人也比喻成胶水语言。
C++:
C++作为全国青少年信息学奥林匹克竞赛唯一指定的语言,如果想往奥青赛方向发展可以选择C++。
JAVA:
Java的语法跟C++很类似,面向对象的程序设计语言,很好地支持跨平台,在Java中,一切皆对象(Everything is object),很多大型的商业系统都是采用Java开发。
这是一个比较漫长的过程,不断地从生活中、学习中吸取知识,观察发现各种事物。然后将这些知识与你的观察思考转化为编程的创意源泉,利用信息技术去解决生活中的问题,这样不断提高自己,增强自己的学习能力,提升自信。
根据我们的实际教学经验,7岁以上的孩子,通过一年左右的时间即可掌握基本的程序设计思维方式。后续的学习家长根据孩子的个体差异和兴趣方向进行调整和安排。
真正的软件工程师,需要系统地完成计算机专业的相关基础课程,还要熟悉各种应用开发相关的专业技能要求。不同的开发方向有不同的技术规格要求。中小学阶段的编程学习重点是学会将软件工程中的优秀思想用于解决学习生活中的问题,树立计算思维模式。当然,如果有学生愿意继续往软件开发方向深入学习也是可以的。
另外,中学生如果学习C++,也可以参加奥青赛。当然,编程教育更多的是培养孩子的思维方式,我们在实际的教学中也希望这种学习不要附加过多竞赛条件,否则又会陷入奥数的怪圈中。竞赛不是学习的唯一目标,当然在竞赛中也可以开阔眼界,增长知识。抱着这种态度,而不是为了分数去比赛,这就违背了我们的初衷!
创客类机器人编程,更多是培养孩子对硬件物理感观上的认知,现在很多机器人也加入了软件编程,需要特定的硬件支持,通过不同的传感器来执行不同的分支,侧重点是硬件的操控,而真正意义上的软件编程,不受硬件的限制,更多是天马行空的想象,软件编程适用范围更加广泛。
现在很多硬件都可以通过Scratch或Python的程序进行编程控制,软件是控制硬件的中枢神经核心系统。之前有个学过Python的学生,在参加学校组织的乐高机器人编程挑战赛得心应手。
在编程过程中可能会粗心大意写错代码,在排错的过程中让学生养成更加严谨的做事习惯。编程的意义主要体现在以下几方面:
·培养探索和创新精神
·提升逻辑思维能力
·树立面向对象的思想
·解决复杂问题的能力
·发散性思维的培养
·树立计算思维模式
·培养团队意识与协作分享
对于零基础的学生,刚开始上课的时候总是问:“老师这个东西怎么做?”,到了后期的时候他们自己学会了改代码,问题就变成:”老师我能不能这样做?”,我都鼓励他们。”可以,你自己先试一试!“。这就是想要的结果,学习的后面部份就是需要这种能把自己的想法用程序实现出来,将被动学习方式转变为主动探索方式。还有在学习过程中我也鼓励学员之间有交流,把自己的作品分享给一起学习的伙伴,有分享才会成长得更快!
面向对象的思维方式就是将复杂的问题进行梳理并拆分成一个一个独立完成的子任务,这也是解决未知问题最有效的方式。编程就是将任务分解成可以用程序来实现的过程。将现实中的问题进行抽象总结归纳,提升程序的可复用性。
说了这么多编程学习的优势,以上只是列出了家长们比较关心的一些问题,还有很多问题来不及一一写出来。如果大家还有什么疑问,欢迎留言给我们!