隐喻

软件工程术语
在软件领域中,隐喻并非简单地用一个名词对软件事物进行类比,软件隐喻的本质是一种认知隐喻。

正文

在软件领域中,隐喻并非简单地用一个名词对软件事物进行类比,它还包含了对类比事物之间的体验与分析,不仅要找出两者之间的类同之处,还要借助人们对隐喻事物的现有理解,通过我们已经熟悉的活动,将软件开发过程联系起来,从而帮助我们更好地认知软件问题域。因此,软件隐喻的本质是一种认知隐喻。我们可以通过在日常生活中无意识获得的基本隐喻系统,在软件开发过程中,受到关联性的启发和影响,使得主观经验和感觉经验相互匹配,然后通过概念融合而形成具有启示意义和指导意义的软件隐喻。这正是软件隐喻的工作机制。
在软件开发过程中,我们会碰到种类繁多的软件隐喻,例如臭虫(bug)、菜单(menu)、视窗(windows);架构(architecture)、服务(service)、对象(object);黑盒(black box)与白盒(white box);瀑布(waterfall)软件模型、迭代(iterative)软件模型……这些软件隐喻无一不是从日常生活或其他科学领域中借鉴而来,根据我们原有的认知,实现一种类比的定义,并逐步发展为软件领域的固有概念。