代码大全2笔记-第二章-隐喻

    用建造房屋来隐喻“构建软件”很恰当!

    建造房屋前需要明确要建什么样的房子,医院,学校,个人住宅,大型写字楼还是其他,建造不同房子所需要用到的人力、财力、工具等显然不一样;做软件前同样需要做需求分析,明确要实现怎么样的软件。

  需求做好后,建造房屋需要设计房屋结构,设计房屋风格等,要产生设计图纸等文档;做软件在需求分析后也要进行各种设计。

  此后,进入实际“构建”阶段。建造房屋要“准备好建造地点,打好地基,搭建房屋框架,砌好边墙,盖好房顶,通水、电、煤气等”,这相当于软件的构建。在房子大部分完工后,需要进行装修美化,这相当于软件开发中的优化

    整个建造房屋的过程,都应该有监理来负责监督,否则设计可能不合理,建筑工人可能采用了差拆料,这就像软件开发整个过程都需要有测试来监督。

  书中举了几个例子,觉得挺有道理。

1、盖房子的时候,把一堵墙推倒然后移动半尺是很昂贵的(倒不是浪费了多少钉子,而是要付给工人更多的钱),所以,一开始的时候,就要尽量把房屋设计好

2、盖房子的时候,沐浴房可以买别人的,组合橱柜也可以买别人的,不见得什么都需要自己来做,做软件时也一样,可以利用现有的程序库完成很多功能,没必要什么都自己写(当然可以借鉴下别人的沐浴房是怎么做的,所以也有必要学习一下别人的程序库)

3、盖房子的时候需要用到很多工具,推土机、起重机、卡车。。。。写软件的时候也要用到很多工具,有些基本的工具如IDE、编辑器、调试器等要能熟练使用,但没必要对所有用到的工具都精通,你推土机开的再好,房子就肯定能建好吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值