隐喻的价值绝不应低估。隐喻的优点在于其可预期的效果,能被所有的人理解,不必要的沟通和误解也因此大为降低,学习和教授更为快速。 实际上,隐喻是对概念进行内在化(internalizing)和抽象(abstracting)的一种途径,它让人们在更高的层面上思考问题,从而避免底层次的错误。
重点:
1. 隐喻是启示而不是算法,因此它们往往有一点随意(sloppy);
2. 隐喻把软件开发过程与其他你熟悉的活动联系在一起,帮助你更好的理解;
3. 有些隐喻比其他一些隐喻更贴切;
4. 通过软件的构建过程比做是房屋的建设过程,我们可以发现,仔细的准备是必要的,而大型项目和小型项目之间也是有差异的;
5. 通过把软件开发过程中的实践比做是智慧工具箱中的工具,我们又发现,每位程序员都有许多工具,但并不存在任何一个能适用于所有工作的工具, 因地制宜的选择正确工具是成为能有效编程的程序员的关键;
6. 不同的隐喻彼此不排斥, 应当使用对你最有益处的某种隐喻组合。