《梦断代码》读书笔记

  梦断代码,英文名是DREAM IN DODE。梦断代码,原作是美国的Scott Rosenberg,经韩磊翻译而来。

  为什么选择读这本书?在图书馆软件工程处翻阅时,被这本书的名字吸引住了,同时之前也听说过《梦断代码》。

  这本书的简介中说:任何一个在软件领域稍有经验的技术人员看完这本书,必掩卷长叹:做软件难。

  在第一章“死定了”里,作者提到了《人月神话》。人月神话的作者布鲁克斯提到:“只有在任务能分派给许多互相之间无需沟通的作者时,人月才是可互换品。”布鲁克斯法则暗示最理想的开发组规模是一个人——无需停下工作与同事沟通的单个开发者。然而,OSFA给布鲁克斯提出了新的难题,就是“开放源代码软件”。这一章还提到了《大教堂与集市》,《大教堂与集市》阐述了开源是一种飞跃,但是并没有解决布鲁克斯所看到的、在从头搭建一套新软件的过程中所遇到的困难,因为在开源世界中,时间无关大局,志愿者不求物质回报。

  在“方法”一章中,作者否定了“瀑布模型”。“这种模型在纸上看似合乎逻辑,但实践起来却总是导致延误,混乱和灾难。每个阶段都耗时无算,但没有一个工作正常的。程序员要么坐等需求,要么干脆在拿到需求之前开始做设计。”在20世纪90年代,软件方法学家提吃了快速应用开发(Rapid Application Development),RAD承诺通过快速原型设计和更紧迫的迭代周期,依靠新工具让计算机处理一些繁重的编程工作,加速完成软件的交付。《敏捷宣言》因其简明扼要而引人注目。但“敏捷开发”更像是共有价值观的保护伞,而不是具体过程的路线图。一般认为敏捷开发和XP(极限编程)最适用于有经验的编码者组成的小团队,如果你想遵循所有的XP信条,你会感到过于苛刻。

  乐高王国一章中提到了“可复用代码”概念。“乐高假设”是:“未来,程序将由可复用的部件组合而成。软件部件将在全球范围内提供。软件工程将从编程的窠臼中解放出来”。但是程序员大多发现此路不通。因为如果把这些构建块比作积木,这些积木应该细小,不可分,可被替代,但是实际上程序中的组件在尺寸上、功能上以及与其他组件的可拼接数量上差异甚大。

  在管理奇客和狗一章中,提到了项目经理的职责。“为OSAF寻找软件开发经理的工作进展缓慢。尽管居此位者手握大权,却许多程序员不愿为之。”一些程序员厌恶经理,另一些人认同良好管理的价值,但却不够胆色担此重任。非正式的技术项目管理方式在惠普的“闲逛式管理”概念达到顶峰,但在软件领域却很不成功,因为开发进度是闲逛的管理人员看不到的。

原文地址:https://www.cnblogs.com/jirufeng/p/5143741.html