1. 隐喻的重要性
重要的科学研究成果往往来自于类比,光的波动性最早是研究声音跟光之间的相似性得出来的结论,光和声音都有振幅(亮度,响度),频率(色彩,音调)和其他一些共有的属性。我们在对系统建模的时候也是靠一些已有的模型来对一些未知领域的类比,分析共性来理清对新系统的理解。
2. 常见的软件隐喻
写作型
就好比我们写一封信一样,从头到尾一直写下去,发现不满意撕了从来。一封信写完往往是一垃圾篓废纸。当我们没有意识的去写软件时候就是如此,这往往是最糟糕的情况。
生长型
试想一下一颗珍珠的养成过程,一颗小小的石头在牡蛎的肚子里慢慢的演化成一颗闪耀的珍珠。就好比我们一点点的写软件,测试某一部分功能然后继续完善一直到程序完成的那天我们才能看到该软件的真实面目。
迭代型
在地质构成中,有一种岩层叫冲积层,它的形成过程是一层一层的泥沙附着在岩石的表面经过长年累月而慢慢形成的。在每一次成型之前都是它都是一层完整的岩石。试想一下我们熟悉的迭代式软件开发是不是也有点相似性。