zoukankan      html  css  js  c++  java
  • 软件构建过程中的隐喻

          最近刚刚看了"国外程序员推荐:每个程序员都应读的书"博文,就立马买了本《代码大全》拜读,看得不多,但是对第二章《用隐喻来更充分地理解软件开发(Metaphors for a Richer Understanding of Software Development)》颇有感触。

          通过读的这点点内容,我管中窥豹,感觉《代码大全》是一本帮助和促进软件开发人员建立软件构建思想的经典之作。

          其实,隐喻在各个领域都是不可或缺的,它有助于领域人员提高理解力和建立高层概念。对于普遍意义下的个人而言,学习使用隐喻是个人成长的各个阶段都不可或缺的一项本领。人之初,认识的事情十分有限,对于新事物,总是在用以前已经内在化(internalizing)的概念来去对比(或隐喻),从而加快对新事物的理解,并逐渐认清新事物的本质,直至这个新事物变为新的内在化的概念。有些情况下,如果找不到内在的概念去隐喻新事物,那么个人对新事物的认知进程将会比较漫长。简单的例子,在认识狗之后,没有认识狼之前,个人会建立这样的一个隐喻:狼类似于狗,狗就是狼的隐喻,但是二者并不相同,随着认识的加深,个人就会建立两个内在化概念,狗的概念和狼的概念,二者是不同的。

          软件构建中的隐喻重要性不言自明。《代码大全》中对隐喻的阐述更多是指启示,是指导思想,而不是一个具体的实现。隐喻是有意识的,当构建人员碰到领域知识后,会用已有的知识去理解;同时隐喻是无意识的,构建人员可能很少会注意到自己往往一直在做这样的一个类比(隐喻)。通过阅读《代码大全》,可以敦促构建人员有意识的进行隐喻,快速提高理解力,减少不必要的沟通和误解,提高构建效率,真是大有裨益啊!

          隐喻,其实是一个很浅显的道理,浅显但是不简单,需要多多提高!

  • 相关阅读:
    "pom.xml" could not be activated because it does not exist.
    spring boot启动STS 运行报错 java.lang.NoClassDefFoundError: ch/qos/logback/classic/LoggerContext
    @SpringBootApplication cannot be resolved to a type In STS
    Maven搭建之后的设置
    自动化部署工具
    康威定律
    Thrift简介
    JVM分代通俗解释
    过滤器和监听器之间的区别
    Configuring WS-Security UsernameToken and WS-SecureConversation (Symmetric Connection Creation)
  • 原文地址:https://www.cnblogs.com/junier/p/2417846.html
Copyright © 2011-2022 走看看