分解——化繁为简
分解,简单来说,就是“把复杂的大问题,拆解成更可执行、更好理解的小步骤”,它能锻炼我们拆解复杂问题的能力。
编程的过程,就是把复杂和庞大的问题“自上而下,逐步拆解,直至理顺”。这种思维,在学习和生活叫“分解思想”,在工作中又叫“项目管理”。
做数学题也是一样的道理。解答一道复杂的题目,通常需要把它拆解成多个大步骤,而每个大步骤,又可以继续分解为更多的小步骤......分解思想,也是数学中最重要的思想之一。这也是学编程的人,数学成绩不会差的原因。具备这种思维的人,做事情是有条不紊并且有耐心的,即便面对一道有挑战的数学题,也能列出清晰的解题步骤,清楚地知道自己每一步的进展,而不是遇到难题时脑子里一团乱麻。
抽象——聚焦关键
编程中最关键的就是“抽象思维”能力,它能锻炼我们聚焦重点,忽略无用信息,并抽取关键信息的能力。
编程的世界里,就包含“子系统、模块、包、类、方法和语句”等不同层级的抽象,学编程能锻炼孩子们不断抽象、聚焦关键信息的能力。抽象思维能力越高的孩子,在大量信息中聚焦关键信息的能力会越强,专注力也会更高,自然学习也会更轻松。
模式识别——规律整合
模式识别,就是“如何找出相似的模式,并高效率解决细分问题”,它能极大锻炼我们规律整合的能力。善于发现和总结规律的人,常常做事麻利、效率也特别高。因为他们脑子里自备各种规律的“方法库“,遇到相似的情况就直接调用,极大节省了时间,也不会错漏。
在编程学习的过程中,人们也一直在做这样的训练:发现一些可以重复的单元,把它整合起来,套用进设定好的模式,再让计算机去重复它。规律整合能力强的孩子,也善于发现学习中的规律和方法。看到一道题,有些孩子一瞬间就想到了解题方法与思路,是因为这个孩子具有很高的“模式识别,规律整合”的能力。
算法——逻辑思维
算法,就是根据之前一系列对于问题的理解,设计一步一步的解决路径,并解决整个问题。
在具体解决问题的过程中,最关键的能力有两个——“逻辑思维”和“调试纠错”。
►逻辑思维
计算机程序需要很强的逻辑性,逻辑顺畅才能顺利运行。
►调试纠错能力
编程里,只有对与错,没有模糊值。在程序运行的过程中,只要最终的结果与期望不符合,就证明算法中肯定有错漏。
为什么优秀的人总在进步?就是因为他们懂得“回溯、调试、纠错”,不断进行自我优化和成长,不断be better。