开放式问题:功能设计中隐喻的作用?
开放式面试问题:功能设计中隐喻的作用?
这个问题选自前段时间微博上一位技术高手所发的开放式问题。初看之下有点懵,表示没看懂,功能设计与隐喻有什么关系,一个是软件设计中的东西,一个是文学修辞里的概念。谁要是面试的时候这么问的话我第一反应肯定是真TMD装逼。好吧,搜了搜这玩意儿,原来在互联网应用中早就有这么个提法了,毕业之后一直做企业应用,发现落后真多!
“隐喻”按照【*】里的解释:用在比较两个好像无关事物,制造的一个修辞的转义。 通常,一个第一个事物可以被描述成作为第二个物体。 以这种方法,第一个对象可能在很容易从第2物体能用来描述。
用在软件设计中,实际上我的理解就是软件产品中的概念以更通俗更易于常人理解的概念表达出来。我们设计出来的软件不是只给自己用的,特别是互联网应用,目标就是要让越来越多的人用你的东西,而在此过程中势必需要降低初次接触者的使用门槛,最好做到别人不需要浏览太多文字,按照网页上所提供的图标、按钮之类形象化的不需要停留思考过长时间的接触而能够很容易达成自己的目的。这点上其实与企业应用还有些区别,因为做企业应用的软件很多概念实际上该行业已有共通的表述(即行业术语),做这一行的软件的人员只需要也必须拥有该行业差不多的行业背景知识即可。互联网应用很多时候是在创造概念,而此时如何给这些概念命名是门学问。这个问题里要达到的最好的状态是提供出易于理解的形象表述,并且让使用者按照自己过往操作同类或相似产品的经验便可以达到目的。
这方面竟然有已经有人写过论文《互联网产品中隐喻表达的设计研究》,虽然整个看下来有价值的信息其实没多少,抽去八股式的废话、概念之后发现原来等于啥都没说,以前一直这么干的,只不过没怎么总结出来罢了。
写到这儿才想起来,其实这个在《领域驱动设计》那本书里面早就提到过了。说起来很简单,windows里面的文件夹用黄色的文件夹图标来显示就是一个很好的隐喻,当年刚学计算机时一看这玩意儿就知道,再点击一下,果然那些要的文件如你预期一般展现在屏幕上了。
当然,那种一套系统通过自造的概念能够引进大量用户的传奇故事我没见过,这方面得承认,我们的IT水平其实只是在拷贝层次,绝大部分都是国外已经兴起了一个什么东西,咱搬过来,本地化一下,翻译上能追求个“信达雅”罕见了。
扯了这么半天,标题中的这个问题其实没有什么答案,至少就我目前的精力没有碰到过几个可以值得一说的故事。我承认,隐喻在用户操作、功能设计甚至是编码层面(比如Coder会对某个类、某个变量起什么名字抓耳挠腮)的特殊意义。但能说的也仅止于此,已做、在做、能做原创性的事情越多,这个问题的答案才会越丰富。
上一篇: 外系统单个功能页面嵌入填坑记
下一篇: 《java事务设计策略》读后感