当前位置:首页 > 科学研究 > 电子编程 > 正文内容

编程思维|锻炼孩子的逻辑思维

RonWang4年前 (2018-10-06)电子编程80

自然语言(人类的语言)和计算机语言之间有许多相似之处,学习计算机语言类似于学习一门外语语法。 计算机编程或者算法的难点和意义是,是编程思维和解决问题能力。

程序设计早已不是程序员们独有的技术活了,很多国家在小学阶段就引进甚至普及编程课:

2012年爱沙尼亚宣布为所有入学儿童引入计算机编程课程,成为全球首个让小学生学习编程的国家。

2014年英国在教育制度改革中规定5岁以上的学生都必须修读一门课程,那就是电脑程序编写。

2016年芬兰成为继爱沙尼亚和英语之后,第三个将编程纳入小学生教学大纲的国家。

在科技中心美国,虽然没有把编程列为小学必修课,但是连总统奥巴马都亲自上阵宣传,推动每年一次的“编程一小时(Hour of Code)”活动——一个帮助孩子甚至成年人学习编程的公益项目。

编程一小时

编程思维的核心,不是编程语言和语法,更不是算法或数据结构本身,而是如何分解问题,从中发现规律,建立解决问题的模型,并映射到合适的数据结构和算法上,然后才能根据算法写程序实现。

在未来的世界,编程将成为一种基本能力。编程可以使孩子拥有比同龄人更严谨的思维,能让孩子们从另一方面展示自己,建立更强大的自信。在程序的世界中,没有特别规定的路径,也没有什么“正确的答案”,他们完全可以根据自己的答案去解决问题,这对于独立解决问题的能力和逻辑思维能力,是极好的锻炼。 在这个日益数字化的世界,让孩子学一门可能对未来职业规划有帮助的技能是十分有必要的。不管以后孩子是否从事编程行业,编程时学到的逻辑思维、算法思维将会让孩子终身受益(编程思想的比奥数学到的思维模式用来解决实际问题更有实际价值)。

什么是编程思维?

所谓“编程思维“就是”理解问题、找出路径“的思维过程,它由四个步骤组成(Decomposition拆分、Pattern Recognition模式识别、Abstraction抽象、Algorithms算法)

从本质上讲,编程思维是把现实生活中的复杂问题,逐渐拆分成可以理解的小问题(Decomposition拆分)。接着根据已有的知识和经验,找出新问题和以前解决过的问题的相似性,举一反三琢磨出规律(Pattern Recognition模式识别),然后将问题里涉及的数据抽象(Abstraction)到数据结构(变量,数组,链表等等),把数据处理过程可重复执行部分抽象成函数模块,通过循环执行,最后根据前三步的分析成果,设计步骤,写出算法(Algorithms),从而解决问题。

apple hour of code

编程思维的意义

学习编程不一定都要成为程序员,而是培养一种思维习惯,编程思维可以用来处理任何事情。

例如:组织一次朋友聚会的时候,你需要分析问题:你们能去哪里、做什么、每个参加聚会的人都喜欢什么、预算成本、时间长短、天气等等问题。

再比如:写一篇文章的时候,想把文章写得又快又好,要先分解题目,拆分出内容的层次;然后调用存储的信息列出提纲,理清思路,最后下笔。

这种逻辑思维,是学习编程带来的最重要的能力。而英国,爱尔兰等国家推行全国编程教育的主要目的就是让人养成编程思维。因为编程思维能够更好的帮助学生沥青逻辑过程、理解问题,从而高效的解决问题。

2014年英国把图形化编程纳入了5岁以上小朋友的必修课;在法国,编程被纳入了初等义务教育的选修课程;在北欧国家如芬兰、爱沙尼亚也把编程作为了一门非常重要的义务教育学科。而在中国,只有很少很少一部分孩子在学编程,少儿编程教育在中国还是一块很少被人触及的真空地带。我们常说“不能让孩子输在起跑线上”,可是我们的孩子在编程这个领域已经落后发达国家很多了。

Seattle Hour of Code

培养编程思维不仅是培养编程能力

编程思维是一个看似遥远与抽象的概念,但当中却蕴含着丰富的人生大智慧。

小到洗衣做饭,大到公司决策。编程思维是计算机科学解决问题的一种强有力的思维方式。

具有编程思维的人,遇到问题会取出问题细节,抽象定义问题,会通过收集数据,分析数据来理解和思考问题;能够将一个问题清晰具体的描述出来,并将问题的解决方案表示为一个信息处理的流程。

那么,孩子除了能够掌握如何变编写代码外,还能得到什么?

编程思维能力

1、问题解决能力

计算机可以帮助人类解决问题,但是要解决那些问题,解决问题的路径,还是人类说了算。培养编程思维就是培养理解问题,找出解决问题路径的能力。

2、内在学习动力

内在驱动力是指学生被学习活动本身激发的驱动力而不是外部的奖励。

2016 Hour of Code

在编程学习中,学生们不再是完成练习题,而是“我要做一款自己想要的产品、解决生活中的一个问题“。编程教育可以从提高内在学习动力、潜能激发、树立自信、学会自我激励等方面入手来增强学生的内在学习动力,使他们的远景目标与近景目标相结合,增强当下的学习动力。

3、创造能力

在瞬息万变的今天,没有什么比创造力更重要。虽然现在已经有很多人花大量时间与电脑互动,可他们中的大多数并没有机会用电脑进行创造。他们在玩游戏是得心应手,却无法创造他们自己的游戏。而编程学习就是要急眼他门创造的机会,让他们从科技的消费者变为科技的创造者。

面向孩子的编程语言如:Scratch、Blockly和ROBOLAB等,可以让儿童借助图形化的编程工具,从简到繁,从易到难,一步一步的让编程成为一种“思维艺术”,让孩子们尽情的在0和1的世界里遨游,充分激发孩子们的想象空间,让各种天马行空的创意在程序中实现。要知道,年幼的孩子在学习语言上有很大的天赋,因为年轻的大脑更容易形成“程序性”记忆——一种深深烙印在我们神经中的记忆,调动时只是一个条件反射而无需意识参与。

那么,Donstudio将会在这里为您讲解关于儿童编程的启蒙课程《Hello Ruby 儿童编程大冒险》《Scrathc 编程真好玩》等。


    Hello Ruby

版权声明:本文为原创文章,版权归donstudio所有,欢迎分享本文,转载请保留出处!

本文链接:http://parentscn.com/?id=37

相关文章

色环电阻的识别与数值读取

色环电阻的识别与数值读取

色环电阻是在电阻封装上(即电阻表面)涂上一定颜色的色环,来代表这个电阻的阻值。色环实际上是早期为了帮助人们分辨不同阻值而设定的标准。色环电阻应用还是很广泛的,如家用电器、电子仪表、电子设备中常常可以见...

The incredible growth of Python

The incredible growth of Python

Python is a powerful programming language and Big Scope of Python   Programming Language. Pytho...

Scratch简介及程序下载

Scratch简介及程序下载

Scratch是 MIT (麻省理工学院) 发展的一套新的程序语言,可以用来创造交互式故事、动画、游戏、音乐和艺术。很适合8岁以上儿童使用,目前2.0版已经完全支持中文界面,更方便使用,完全不用背指令...

Python 适合儿童的编程语言

Python 适合儿童的编程语言

Scratch图形编程优点在于图形化拖拽的方式简化了编程的理解,而C,JAVA,JAVASCRIPT,PYTHON等编程语言相对枯燥复杂,涉及复杂编程语法,变量规则,函数,对象等等,因此直接教授这类编...

Python 计算机程序设计语言简介

Python 计算机程序设计语言简介

Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被...

STEAM|60个好玩的 APP推荐

STEAM|60个好玩的 APP推荐

STEAM教育理念最早是美国政府提出的教育倡议,为加强美国K12(中小学)关于科学、技术、工程、艺术以及数学的教育。STEAM的原身是STEM理念,即科学(Science)、技术(Technology...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。