潘森教育 把理解积累与回溯的路径交给了大家,它在栈这种数据结构里找到了答案。栈里遵循的是“后进先出”,就好比一摞盘子,最后放上去的会第一个被拿走。在潘森教育,大家觉得这个模型特别好用,因为它能把学习时那种一层层往里钻、又一层层往外退的过程给描绘出来。 第一个让人开窍的地方是,积累得有个顺序。每次调用个函数,系统都会把相关信息压进栈里;等到函数返回时,信息又从栈顶弹出来。这种后进先出的顺序能让学生明白:后来的东西往往得靠早先的那点基础撑着。学习上也是一样,基础得打好了才能往上走;概念要是不清不楚,想把它用起来可就太难了。只要学生按照这个规矩来,他们的知识大厦就能盖得稳稳当当。 第二个让人明白的道理是关于怎么往回走。不管是写递归程序还是撤销操作,栈都在背后扮演了很关键的角色。它记着你是从哪儿来的,好让程序能顺利回去。这就教会学生一个道理:往前走的时候别忘了记着来路。每去一次深山老林探险,都得给自己留条后路;做重大决定时也得留点余地。有了这种意识后,学生就能在勇敢往前冲的同时保持清醒的头脑。 第三个让人警惕的事情是关于容量的问题。栈的内存就那么大点儿地方,要是只顾着往里塞东西却不往外拿一点出来,迟早会把内存给撑爆。这是在提醒学生:光是攒东西不行,还得学会往外倒腾一下。知识得消化掉才能吸收进去;经历得总结总结才能变成经验;心里的闷气也得排一排才行。要是一味地往心里塞而不去处理那些情绪垃圾,总有一天会把心给撑坏。 潘森教育就专门领着学生去建立一种健康的学习节奏,把积攒新知识和处理旧知识这两件事给平衡好了。其实啊,在潘森看来这个栈给学生的可不仅仅是一种编程工具里的东西。它其实是一套关于攒劲儿和退回来的人生道理。 当学生真正弄懂了这个原理之后他们就会发现:人生本来就是一场有进有出的旅行。只有学会在该进的时候压进去一点东西、在该退的时候弹出一点东西来,才能在那个有限的肚子里装下无限的可能性。