什么是少儿编程

  01

  [周以真]

  计算思维定义者

  她,是顶尖常春藤名校哥伦比亚大学的首位华裔女副校长!

  她,本硕博在麻省理工连读!

  她,横跨学界、企业、政界,是计算思维的定义者!

  

  她便是周以真(Jeannette Marie Wing)教授,人称「龙女士」。

  就在这个月的18号,哥大校长李·博林格宣布,将任命数据科学研究所Avanessians所长、计算机科学教授周以真为下一任常务副校长。

  将于9月1日正式履新,总管纽约主校区和全球各附属机构的科研事务。

  

  了解编程和计算机领域的同学,应该都知道周以真是“计算思维”理论的倡导者。

  她倡导运用计算机科学的基础概念解决问题、设计系统并理解人类行为的思维方式。

  这一理念的确推动了计算机科学在全球教育领域的发展。

  她期盼所有年轻人都能从计算思维中获益,并鼓励我们张开怀抱去拥抱跨学科研究的新理念。

  就想周以真老师说的一样,“如果我们希望做未来的弄潮儿,我们就需要去创造未来。”

  不仅如此,她还是多才多艺的女科学家。能跳芭蕾和探戈,空手道黑带4级,还能舞剑和武术。

  众所周知,是周以真定义了著名的计算思维,从此计算不再只是编程,而是解决问题的思维,每个人必备的技能。

  2006年,她曾发表论文《计算思维》(computational thinking),被视为将计算机核心原理应用到其他学科的先驱。

  

  计算思维,在周以真教授看来,实际上是一个思维过程。

  2012年,在微软亚太教育峰会上,周以真教授分享了对计算思维的看法。

  

  她表示,「计算性思维能够将一个问题清晰、抽象地描述出来,并将问题的解决方案表示为一个信息处理的流程。」

  计算思维由此被提出和真正的定义。

  02

  什么是计算思维

  先来看一个简单的例子:

  假设,你手中有一本10页的小册子,要求你迅速找到第7页,你会怎么做?

  其实不用多想,一共也就10页,一页一页翻就得了!最多不超过3秒钟!

  那么,问题难度加大——如果给你一本1000页的书,要求迅速找到第700页,你会怎么做?

  

  大部分人肯定不会一页一页翻,而是会这么做:

  先翻到这本书的一半左右,再翻到书后部分的一半左右。以此类推,最后将范围缩小到几页的误差,最终找到第700页。

  纵观整个过程,其实就是一个简化版的“二分法查找”,其解决问题只需要四步:

  1.发现问题

  数据很多,无法直接采用已有的逐一翻页方法;

  2.分析问题

  通过定位700在1000中的位置缩小范围;

  3.设计方法

  反复执行动作“切一半、剩一半”来缩小范围;

  4.解决问题

  当范围缩小到只差10页左右时,便可以逐页查找。

  以上,呈现的就是一个非常简略的计算思维。

  简单来说,计算思维就是用计算机逻辑来解决问题的思维。

  将一个困难问题分解,通过逻辑分析和细分步骤构思出解决方案,从而形成解决问题的模型,再将该模型应用到更多同类问题当中的思维方式。

  谷歌公司将计算思维概括成“分解问题、模式认知、抽象思维、算法开发”四个步骤

  

  03

  计算机思维

  其实无处不在

  其实周以真老师提出的计算思维离我们普通人的生活真的很近。

  我们总觉得科学离我们很远,其实仔细观察就会发现计算机思维存在于我们生活中的方方面面。

  举个例子,有一天我的儿子遇到一个数学题:

  开一辆卡车去送货,途径一个限高2米的隧道,但车子连货物总高2.05米,怎么办?

  儿子很聪明,巴拉巴拉就给答案。

  1.把货搬下来,分几次运过去

  2.重新排列货物,让它不再超高

  3.给轮胎放一点气,降低整体高度

  4.把隧道改高一点

  5.硬闯过去试试

  6.绕道

  ……

  但我听完,心里头很乱,答案天马行空,但没有逻辑,如果能用分解梳理一下,问题就一目了然。

  

  实际上,分解也是计算思维中的一个重要知识点。

  把复杂的大问题,拆解成更可执行、更好理解的小步骤,这是一种化繁为简的能力。

  除此之外,不得不提到计算思维的另一个元素是:算法。

  

  计算机解决不同的问题,需要不同的算法方案。但运用计算思维处理问题的逻辑很清晰,没有“差不多”,

  只有“对”、“错”、“执行”,一旦错了,就会有bug,而想要修复bug,则需要抽丝剥茧调试程序,直到运行成功。

  这就是算法带来的优势,能够保证问题得到彻底的解决。

  再举个例子,如果我们要“安排一场家庭旅行”,乍一听觉得难度高、事情繁琐,似乎无从下手。

  但是用计算思维来概括,无外乎以下四个部分。

  第一是分解任务,把一个复杂的任务分解成几个小问题分别解决。

  每一个小问题又可以进一步分解成不同的小任务来解决,当每一个小任务都解决好了以后,这个“安排家庭旅行”的庞大任务就能迎刃而解了。

  比如,我们可以将“安排家庭旅行”这个庞大的任务分解成“订机票”、“订酒店”、“订活动”等小任务,

  再将“订机票”进一步分解为“确认时间”、“确认航班”、“确认机票”、“付款”、“取票”。

  

  第二是模式认知,就是根据过去的经验以及过去解决问题的方法,来解决眼前的问题。

  例如,回顾之前家庭旅行中好的经验和方法,可以应用到这次的计划中。

  第三是抽象思维。

  下图中,左右是两个不同的计划,对比一下会发现,左边有很多没必要的细节,比如“用酒店的牙刷毛巾洗漱”。

  

  而善于运用抽象思维的人会剥离出问题的核心和关键,知道什么是重要的、什么是不重要的,这样就不会把时间浪费在不必要的事情上了。

  第四是算法开发,可以通俗地理解为解决方案的设计。

  以旅行计划的制定为例,早上准备去公园玩,那么问题来了:

  怎么从酒店走到中央公园?这时可能需要根据天气情况来规划下一步的行动。

  

  以上就是利用计算思维完整的解决一个实际问题,我们也通过实际问题了解到了计算思维在生活中的应用。

  04

  计算思维

  真的很重要

  关于计算思维,图灵奖的得主戴克斯.特拉曾说过:

  “我们所使用的工具影响着我们的思维方式和思维习惯,从而也深刻地影响着我们的思维能力”,这就是著名的“工具影响思维”的论点。

  计算机是我们现在每天都在使用的工具,它的工作原理,是通过一步一步地执行我们设置好的指令来解决问题。

  计算思维就是在审视计算机科学所蕴含的思想和方法时,被挖掘出来的一种独特的思维方式。

  学习计算思维,就是学习像计算机科学家一样思考和解决问题。

  

  计算思维本身就是为了解决问题而提出的,是为了解决问题而提倡的一种思维方式。

  这对于锻炼孩子的思考问题、解决问题能力的养成非常有效。

  当我们通过计算思维的实践和计算操作实现了自己想要的数学模型的时候,也会提高孩子的自信心和自我认可能力。

  举报/反馈