“少年智则国智,少年富则国富,少年强则国强……”青少年是推动未来社会发展变革的重要力量,因此青少年教育往往都是各国战略的重中之重,我国为了抓住人工智能发展的重大战略机遇,构筑我国人工智能发展的先发优势,2017年开始陆续发布了《新一代人工智能发展规划》等系列政策。
各地为响应号召陆续将人工智能和编程纳入中小学教育,并多以“启蒙式”的人工智能教育为主,拓宽青少年的眼界、培养其对人工智能的兴趣,为养成人工智能和编程人才夯实基础。
什么是“编程思维”
“行百里者半九十”,再加上每个学生的兴趣不一,所以人工智能和编程纳入中小学必修课,并非是让所有的孩子都朝着人工智能和编程方向发展,而是在学习中培养其“编程思维”。
想要明白何为“编程思维”,首先要理解何为“编程”。“编程”我们可以简单的理解为如何与电脑对话,让其能执行我们的命令并实现我们预想的结果。如生活中我们需要一张椅子来休息,只需要跟对方说将椅子拿过来即可,但若需要通过电脑实现这一步骤,我们需要首先定义何为“椅子”,然后根据我们和其之间的距离分解出对应的动作,如:把凳子向上移动20厘米;往前移动两米;把凳子向下移动20厘米……
从上面的小例子不难发现,相较于人与人之间交流的随意性,和电脑对话时,必须具备严谨、理性的思路,每一步都要给出准确的指令,这样就能让电脑按照自己的想法行动,不会让结果跑偏。
“编程思维”正是一种“理解问题—分解问题—找出路径”高效思维过程,它包含分解、模式识别、抽象、算法四个步骤:
分解:将一个复杂的大问题,拆解成更好理解、更可执行的小步骤。
抽象:忽视无用细节,聚焦问题的关键或本质,以提高效率有的放矢。
模式识别:从以往的经验中寻找类似问题,以相似的解决方式,高效率解决细分问题。
算法:据前面对问题的分析与理解,以正确的逻辑设计每一步的路径方法,以解决整个问题。
如何培养“编程思维”
培养和提升“编程思维”可充分利用一些思维导图工具,它们能帮助我们建立结构化的思考方式、快速的梳理流程、找到一些问题的关键节点,并同时注意归类、分解、总结,这些习惯有利于“编程思维”的养成。
学习编程是一种最好的培养“编程思维”的方式,但对于孩子而言纯代码编程难免会有点晦涩难懂,每个孩子的基础又不一而足。且现阶段虽我国在大力普及人工智能与编程教育,不少地区都设置了人工智能与编程教育的课程,但多以生活相关事物为引,讲解编程概念与应用知识,并辅体验式教学手段,通过游戏化、项目式教学模式,借助积木式编程工具,对对象、模块、控制、执行等概念予以直观体验,以此来感受“编程思维”。
所以家长更需从孩子的兴趣与天赋出发,低年龄段的孩子可以从图形化编程Scratch入手,游戏化的趣味形式能让孩子快速产生兴趣、上手难度低能培养孩子自信,后逐步接触纯代码编程(C++/Python等)再来判断孩子是否有真正的编程兴趣与天赋,是否能够向着编程方向进行更深入的学习。此外“编程思维”的培养,不单可通过体系化的编程语言学习获得提升,在数学中也有很多的逻辑题目,体现了基础的编程思维,这类训练也不失为一种一举两得的好方式。
言而总之“条条大路通罗马”,只要能养成“回溯、调试、纠错”,不断进行自我优化和成长的基础思维逻辑,离“编程思维”也就不远了。