读《向外行一样思考、像专家一样实践》之 简单、省略、抽象化、例子分析
当你遇到一个复杂问题的时候,你会怎么做呢? 你会使用分析的方法,将这个复杂的问题理解清楚,之后从上到下地“结构性”的构造解决方案。——这是我们被教育的解决问题的方法。
金出武雄是这样说的,“在我们进行研究的时候,如果直接从复杂的现实开始思考,是无法顺利进展的。如果将发生的事情简单、省略、抽象化后再看,就会清晰很多,这是科学与工学的基本要求”。...... 省略的思考过程,将问题简化到最合适的程度,这是需要有预见能力的。...... 我认为科学和工学都是门艺术。人们经常笼统地看待现实世界的现象和事实,觉得没有什么内部构造可言。但是,在别人都认为没有的地方看到构造,这就是创意。
上面的话,已经说的很明白了,当我们解决科学问题的时候,应该尝试创造性的提取问题“最简单”构造,在这个基础之上进行解决,这就跟测试驱动开发中解决问题的方式是一样的,从简单例子出发,一步一步的逼近目标,例子本身需要有构造力,才能真正的驱动出结果。这不是“巧合”,因为这正是解决问题时需要遵循的规律也是一种正确的实践方法。
记得之前在咨询时,很多人觉得使用用例驱动程序是一种不严谨的做法,“科学的程序”不应该仅仅靠例子驱动出来。这里我不对背后的原因做太多的解释,引用获得Fields数学奖的小平邦彦教授所说,数学是一种高度感性的学科,这种感觉叫做“数感”,数学中的辅助线就是一种预感和创造性(构造性)的思考。
既然说到了例子,我们来看一下在真正解决问题的时候例子的作用,先听听金出武雄怎么说的“思考某一个问题的时候,从例题入手再分析解决问题是个不错的方法”(冯诺依曼也是肯定这个方法)。“从研究例题入手,得出事物的构造,在建立普遍成立的法则和解法,这种方法可以说是开展研究的强有力的手段之一。