终于有一套书,可以深度融合编程和数学,全方位提升孩子思维高度了

栏目:素质教育  时间:2023-06-18
手机版

  

  看点市面上,编程书不少,但能让编程和数学结合起来的书却不多。《给孩子的计算思维书:图形化编程及数学素养课》这本书,就融合了计算思维与图形化编程思维,手把手地教孩子学会思考,从易到难进行系统性学习,培养并不断提高他们分析和解决问题的能力。

  

  本书的缘起

  早在2017年,还在上海从事少儿编程培训的一位中科院学弟找到我,吐槽了他在编程启蒙培训遇到的一个困境:市面上缺少把编程启蒙和数学紧密结合的课程和书籍。在他看来,计算机科班出身的我是最适合做这件事的人选。

  确实,市面上大部分所谓的编程与数学结合,实际上是利用计算机强大的算力去协助解决数学问题,比如寻找水仙花数,计算1+2+3+...+1000000。事实上,这些只是印证了计算机的快速,对数学思维的培养没有额外的作用。

  除了编程与数学的结合,计算思维的启蒙也是当前的一大需求。但是,市面上关于图形化编程的书虽然很多,但大多是素材的堆砌。看这类书学点技能是没问题,但缺乏思维的高度。自那时起,我就萌生了写一本能全方位渗透计算思维的少儿编程启蒙书。

  在我看来,好的计算思维启蒙书,应该给我们360°全景展示分析和解决问题的过程。

  从2017年开始,我就尝试着在这方面做些工作。这期间,我花了不少时间调研了伦敦大学设计的一个为期两年的scratchMaths项目,这也是为编程零基础的孩子设计的一门课程,算是真正做到在scratch教学中深度融入数学概念和思想。

  

  后来,我也陆续让本科生和研究生辅助设计过一些案例,自己也参加过青少年编程能力等级标准(图形化)的起草。这些,都成为了这本书的缘起。

  

  对图形化编程的认知误区

  社会上有不少人对图形化编程持有偏见。他们认为仅仅是积木拼搭而不写代码,最多只能算玩玩,算不上编程,更培养不了计算思维。而市面上现存的许多良莠不齐的图形化编程书也加深了这些人的偏见,因为这些书大多是编一些游戏,谈不上计算思维的培养。

  

  图书内页

  其实不然,计算思维是一种思维的培养,与具体的编程语言无关。图形化编程目前之所以没有很好地起到训练计算思维的效果,问题不在于图形化编程本身,而在于市场把图形化编程的学习下放得太厉害。

  很多机构都把图形化编程下放到三年级以下。在小学一二年级甚至是幼儿园,逻辑与数学基础都不具备,怎么去熏陶计算思维?

  如果在更高的年级(比如小学中高年级)去学图形化编程,那完全可以作为计算思维训练的载体。

  本质上来说,计算思维的训练与具体的编程语言无关。这就好比一个人的文学修养与他所使用的语言没有关系,文言文可以写出优秀的文学作品,现代白话文和英文同样可以。

  

  图书内页

  计算思维的培养甚至都不需要计算机,目前国外有一门课叫Computer Science Unppluged(国内叫不插电计算机科学),就是通过玩游戏等方式培养计算思维。

  编程的难易主要取决于两个方面:一是程序设计语言的友好性;二是所要解决问题的难度。

  这两者,起决定性因素的是后者。从最早的机器语言到汇编语言到高级语言再到现在的图形化编程语言,程序设计的语法已经变得相当友好了。但无论用哪种编程语言,会写八皇后问题的程序员比例还真不高。

  这就好比英国人觉得法语要比中文容易学。但不管怎样,只要肯学,学会说一门语言并能与人交流并不是难事,但要用任何一门语言创作一首诗歌或一篇小说都不是件容易的事。

  

  本书的特点

  本套书通过学习编程的形式培养计算思维,并将数学融入其中,分为基础篇和进阶篇。

  基础篇主要介绍如何从零开始学习 Scratch图形化编程,并无缝地嵌入了计算思维与相关数学知识。书中特别设计“数学小知识”栏目,讲述相关的数学知识,包括同余、内角、外角、加法原理和乘法原理、勾股定理、对 称、映射、不同进制间的转换、因数等。

  进阶篇进一步提升学习难度,通过编程启发思考,从而锻炼与提高孩子的计算思维能力。涉及的数学知识包括概率、斐波那契数列、指数、素数、最小公倍数、最大公约数等。

  与其他图形化编程图书相比,本书有两大特点:一是数学与图形化编程的深度融合,二是计算思维在图形化编程中的无形渗透。

  同时,本书配有编程项目文件,可供孩子下载学习及实践。本书可以系统地培养并提高孩子的计算思维能力与数学素养,孩子未来可轻松地切换到其他程序设计语言的学习。

  下面具体介绍一下本书的这两大特点。

  本书的第一大特点是数学与图形化编程的深度融合。

  这种融合不是简单地利用计算机的计算能力去暴力求解数学问题,而是把数学的概念和原理无缝地渗入到编程之中。

  比如:通过绘制五彩缤纷的多边形,孩子自然就学会了角度、正多边形、旋转、奇偶性、染色等丰富的数学知识。

  

  图书内页

  又比如,通过设计十进制计数器、非十进制计数器以及时钟,孩子自然就深入理解并掌握了进制的知识。

  

  图书内页

  本书的第二个特点是计算思维在图形化编程的无形渗透。

  我们国家目前的编程教育存在一个问题,就是重算法轻结构。我在大学从事计算机专业的教学工作,发现这个问题在本科生或研究生写的程序里体现得非常明显。很多学生学完了C++、知道抽象类和继承的语法,但却不知道如何在大型程序中运用,对模块化和代码复用的训练偏少。

  但是,计算思维不仅仅是算法!

  我曾经参与起草过由全国高校计算机教育研究会、全国高等院校计算机基础教育研究会、中国软件行业协会、中国青少年宫协会4个团体联合发布的《青少年编程能力等级标准:图形化编程》。在那篇标准文件中,我把数学思维和结构化思维的培养放在了与算法同等重要的位置。

  这一思想也被贯穿到了本书的撰写中。这本书并不是简单地让孩子搭积木玩一玩,了解一下编程的规则,而是更侧重于计算思维和编程素养的培养,因此更适合于小学中高年级的孩子,也适合少儿编程的从业者们。

  图形化编程通过坐标系统、对象与角色、消息与消息传递、事件处理、模块化和代码复用等,可以潜移默化地培养孩子的面向对象编程思想以及系统观。

  到底什么是计算思维?我在《写给孩子的数学之美》一书中是这么说的:

  (1)如果觉得困难,就从简单的开始尝试;

  (2)先得到一个粗略的解,通过不断迭代,逼近问题的真实解;

  (3)把复杂的问题分解为若干个易于解决的小问题,组合小问题的解得出原始问题的解;

  (4)善于发现并利用问题中重复出现的模式;

  (5)分析看似不同的问题的共同点和不同点,抽象出共性;

  (6)善于利用已有的解决方案,站在巨人的肩膀上才能看得更远;

  (7)泛化解决方案(即算法),使得它可以解决一类问题而不是单个问题;

  (8)问题的解决方案往往不止一种,分析与评价不同解决方案的适用性和优缺点。

  在本书中,我进一步概括为:抽象、分解、算法思维、泛化和模式、评估、逻辑。

  在书中,我把上面的思想无形地渗透到了各个部分。比如,对代码复用性的极致追求、对相同模式的识别、对代码泛化能力的追求以及对不同算法的评价。

  

  图书内页

  本书得到了李国杰院士和诸多业内专家的联袂推荐。

  张国强(昍爸)的这本新著不同于其他介绍Scratch 语言的工具书,他将计算思维无缝地结合在编程实践中,通过二十几个有趣的游戏或智力作业,将数学和计算机科学中的基本概念,如最大公约数、素数、排序、二分查找、逻辑运算、递归思维等启发式地引入读者的思维之中。如果把编程仅仅看成一堆死板的规则,只会使学习者厌倦。而这本书是通过编程训练来培养孩子的计算思维,可使孩子受益无穷。

  ——李国杰 中国工程院院士

  计算所的几位同事和我都特别认同让孩子们尽早接触计算思维,并与数学思维相结合,这些理念与张国强师兄高度一致。作为小SIGMA 数学特别兴趣组的指导老师,当我看到这本书时,立刻了产生极大的共鸣——这本书以指导老师的视角,出色地将数学思维融入计算思维,用计算作为手段探讨数学思维。相信这本书会成为孩子们计算思维成长路上的好伙伴,成为家长、老师培养孩子计算思维的好帮手。

  ——包云岗 中国科学院计算技术研究所研究员/ 副所长

  与市面上的大部分图形化编程书不同,张国强的这本书做到了数学思维、计算思维与图形化编程的深度融合。整本书循循善诱,由浅入深,通过一个个有趣的案例把编程知识、数学思维和计算思维讲得明明白白。本书不仅能让孩子跨入编程的大门,还能提升孩子思考问题的深度和广度。编程语言只是载体,思维才是根本,孩子在学习本书后能无障碍地切换到其他编程语言。

  ——李克秋 天津大学教授,国家杰出青年科学基金获得者,IEEE Fellow

  在信息时代,孩子们更有必要学好数学。

  ——仲盛 南京大学教授,国家杰出青年科学基金获得者

  作为国内最早推动Scratch 编程和创客教育的老师,我和昍爸有很多相似之处:喜欢陪孩子一起玩各种有趣的“项目”,在玩的过程中融入数学。我很喜欢他的书和文章,这本新书既关注计算思维,也关注数学素养,每一个案例都值得孩子们去探究,尤其适合家长来阅读。我希望有更多的家长能够和他一样,有责任心,更有教育智慧,做一名和孩子一起成长的创客爸爸。

  ——谢作如 浙江省特级教师

  这是一本既“授人以鱼”又“授人以渔”的书。之所以说“授人以鱼”,是因为书中通过非常流行的图形化编程语言Scratch 带领孩子进入编程的世界。而“授人以渔”更是本书的宗旨,它期望通过一个个鲜活有趣的例子,让大家了解计算机科学家解决问题的思维方式,即计算思维。这种思维不仅仅用于计算机科学中,完全可以推广到任何领域,对于孩子的成长非常有益。“兴趣是最好的老师”,希望本书精选的例子、通俗的语言、细致的讲解能给孩子带来趣味性的感受,给孩子打开计算思维的大门。

  ——王斌 小米人工智能实验室主任

  编程可以培养孩子的逻辑思维能力,其中最重要的就是“问题解决能力”,把复杂的问题分解成小问题,做到“化繁为简”。本书不仅通过编程锻炼孩子的思维,还提升孩子的数学素养,同时兼顾趣味性与科学性,是一本非常值得推荐的好书。

  ——憨爸 公众号“憨爸在美国”主理人

  《给孩子的计算思维书:

  图形化编程及数学素养课》

  已上架外滩教育

  立即购买

  注:周末或节假日发货可能有所延迟。

上一篇:妻子假孕被拆穿,本科女生嫁初中打工仔,华丽谎言背后让人心酸
下一篇:揭秘雅思培训班价格,你想知道多少钱?

最近更新素质教育