青少年编程是学什么?青少年编程学习价值在哪里
青少年编程是学什么?青少年编程学习价值在哪里(1)学龄前儿童不建议学习编程,可以少量玩一玩类似的游戏软件倒是可以,训练灵敏度和游戏里面的大致流程。可以让孩子说一说,这里先会怎么样,再怎么样。根据皮亚杰儿童认知发展理论,2-7岁孩子还处在前运算阶段,数学逻辑抽象能力,还没有完成形成。它不能只是线性的箭头操作式。另外编程学习,有一些抽象的模块内容,需要孩子强大的专注度,这对小孩子而言才是最大的考验。因此我们建议孩子学习编程:编程的学习变得越来越重要,孩子也越来越喜欢。但对于学龄前儿童学习"编程",这么低龄化的教育。我们也要沉下心来分析看看孩子的学习价值和兴趣点是不是在那。编程学习看起来简单的操作,背后是一系列精确代码的支持,学习编程需要有一定的逻辑分析、算术和英文功底。例如孩子编写一个简单的计算器,比如数独工具,五子棋等。这种通过计算机编程解决实际问题的训练,既能激发孩子兴趣,实际上也储备了许多计算机科学的基础知识。
编程教育作为STEM教育的一个模块,越来越受到全球教育的重视。美国前总统奥巴马政府将向美国学校资助40亿美元,用于STEM教育,里面M就是数理逻辑。
之前他就曾在code.org组织的“编程一小时”活动中亲自编写了一段代码,鼓励全美孩子们积极学习编程。
英国《每日电讯报》报道,英国在日前进行的教育制度改革中规定5-16岁儿童将开始学习编写电脑程序。
在我国,教育部印发的《教育信息化“十三五”规划》通知,将信息化教学能力纳入学校办学水平考评体系。2017年1月19日,教育部正式印发了《义务教育小学科学课程标准》,也开始关注到STEAM教育纳入基础学科。
编程的学习变得越来越重要,孩子也越来越喜欢。但对于学龄前儿童学习"编程",这么低龄化的教育。我们也要沉下心来分析看看孩子的学习价值和兴趣点是不是在那。
应该怎么学编程?编程学习看起来简单的操作,背后是一系列精确代码的支持,学习编程需要有一定的逻辑分析、算术和英文功底。
例如孩子编写一个简单的计算器,比如数独工具,五子棋等。这种通过计算机编程解决实际问题的训练,既能激发孩子兴趣,实际上也储备了许多计算机科学的基础知识。
另外编程学习,有一些抽象的模块内容,需要孩子强大的专注度,这对小孩子而言才是最大的考验。因此我们建议孩子学习编程:
(1)学龄前儿童不建议学习编程,可以少量玩一玩类似的游戏软件倒是可以,训练灵敏度和游戏里面的大致流程。可以让孩子说一说,这里先会怎么样,再怎么样。根据皮亚杰儿童认知发展理论,2-7岁孩子还处在前运算阶段,数学逻辑抽象能力,还没有完成形成。它不能只是线性的箭头操作式。
(2)7-10岁可以玩一些简单的趣味编程,例如风靡全球的Scratch,它是由美国麻省理工大学教授编写的,都是图形化界面,没有具体的代码,孩子可以根据编动画。小贤在7岁左右就开始学了,一个暑假下来,轻轻松松编写了10几个动画,下面我会简单介绍一下。
(3)10岁以后,孩子有一定的抽象逻辑思维,可以结合操作性活动,如机器人,进行学习编程。也就是让编程和科技制作联系到一起。
为什么要让孩子学编程?让孩子学习编程的家长大多都是因为不满足学校已有的课程或学习的形式, 所以才会选择一些让孩子感兴趣的模块,让孩子学习。例如科技制作,编程等。而儿童编程绝对是开发逻辑思维的工具。
编程思维是每个人的基本技能,今后不懂编程就是半文盲。早在2006年,卡内基梅隆大学的Jeannette Marie Wing教授所提出了“人人都需要培养编程思维”。
2013年,斯坦福大学教育学院网站上的一篇文章“Learning to code isn't enough”(“只学写代码是不够的”),强调不仅仅是要学写代码,更重要的是培养孩子编程思维。
什么是编程思维?它是指人脑的某种理性思考活动。编写一个计算机程序,跟做一道菜,完成一个项目,管理一家公司,本质上都具有相同的目标——就是要有序地解决问题。
编程学习有哪些好处?编程会培养孩子的多种能力,比纯粹的解题能力更重要。
1.大框架思维
写一个软件,需要先做设计,搭架构,就像QQ程序,腾讯的CTO十几年的程序架构都适合现在几亿人的在线,可想而知这是多么强大的架构能力!
写一段程序,也需要有个大体框架,这种统筹规划全局的思维几乎在任何学习、工作项目中都要用到。
2.复杂任务拆分
一个复杂的问题,看起来千头万绪,编程者需要把它拆解成一个个简单的小问题,再逐个击破。
就像生活中策划一个生日派对,只需要“拆解”细分,比如分成确定邀请多少客人,买些什么食品,派对上些什么节目……这样就好办了。
3.函数变量思维
这有点像麦肯锡方法,“不要重新发明一个轮子”,就是应用了“函数思维“,需要时直接借用原有的思维模式,重新输入条件,进行问题解决。
例如,编程者通常会把那些将会被重复使用到的运算过程或方法,先编写并储存为函数,需要时就直接调用,只需改动输入某些参数、不同场景等即可,不用每次都重新编写。