梦断代码阅读笔记之二

小皇帝闹闹 小皇帝闹闹     2022-09-03     793

关键词:

在本书第一章里,作者为我们介绍了一些关于开源的历史和开源的开发方式。同时作者为我们对比了传统开发模式与开源开发的优劣之处。这两者的对比能让我们对于软件开发模式有一个更深刻的认识。

         开源不仅给出了一种生产和分发软件的替代性经济基础方案;它还能彻底改变软件开发的具体过程——将其从少数隐士手里拿出来,散播到广大人群中。程序员瑞蒙德在论文《大教堂与集市》中将两种开发方式做了一个有趣的比喻:最重要的软件应该需要像建教堂一般,由独立的巫师或一队相互隔离的魔法师精心打造,在面世之前绝对不发布beat版本。而开源开发的风格——早发布、多发布、全委托、尽开放——让我吃惊。这里不存在静穆、虔诚的教堂式开发——相反,Linux社群看似一个乱哄哄的大集市,铺设了各种日程和手法。要从中得到前后一致和稳定的系统,简直只能指望奇迹再三出现。可事实上这种集市风格看来行之有效,真令人震惊。

         瑞蒙德在这些开源工作中看到了超越布鲁克斯法则的力量。这种新的开发模式可集众程序员之长,且免于让项目深陷泥潭。瑞蒙德之处其中的两个要诀:其一,低成本、广泛的接入像互联网那样的网络,让开发者之间建立起迅速、可信的通讯渠道,储存可被开放访问的共享知识和代码池。其二,围绕一种领导方式,形成合作团队的良好风气,欢迎新成员的加入,鼓励成员做出贡献,同时尽可能增加合格成员。一旦具备这些条件,就能彻底改进在程序中寻找和修正缺陷的过程。与其害怕竞争对手窃取代码而秘不示人,不如将其展示给全世界,邀请同道加入。而且假使你独具魅力,懂得如何管理一群开发者,或许还能组织起一个自循环的集智体系。瑞蒙德还表达了一个李纳斯法则:眼球足够多,缺陷无处躲。他由此对布鲁克斯法则提出不同意见:让懂得怀柔政策的开发协调人员拥有至少像互联网那样好的沟通媒介,多人必好过一人

         开源本身,即让程序员学习和扩展源代码的可能性,已经是布鲁克斯描述世界的一部分,但是开源方法和基于互联网的协作集市,仍然待以来者。瑞蒙德的观点,更多的体现于看到互联网和开源开发领导方式在让接触源代码更具有价值方面的重要性,而不在于解释为什么应该让程序员接触到源代码。

         瑞蒙德的这些言论令人信服的阐述了开源方式是一种飞跃,但是并未完全解决布鲁克斯所看到的,从头搭建一套软件系统的过程中所遇到的困难。瑞蒙德展示了开放集市如何能够融大群程序员之智慧于一炉、且不触及布鲁克斯法则的铁律,但他无法说明开源方式是否更易预测开发新程序所需的时间,或者是否能够加速软件面世的进程。

梦断代码阅读笔记01

               梦断代码阅读笔记01                &nbs 查看详情

梦断代码阅读笔记之一

最近阅读了罗森伯格的《梦断代码》,算是近距离观察了十几年前软件开发的状态。这本书是作者对OSAF主持的Chandler项目进行田野调查 而写的一本书。本书是在讲一事,也是在讲百千事;是写一软件,也是在写千百软件。在... 查看详情

《梦断代码》阅读笔记之一

  今天我大致看了《梦断代码》的前两章,内容虽然不多,但是写出了作者的真实写照。我在看到这本书目录时,有点迷惑,为什么开始的一章标为“第0章”呢?在阅读这一章的过程中知道了原因,原来作者只想指出程序员... 查看详情

梦断代码阅读笔记01

第0章软件时间 黑代码:原来程序逻辑中没有的部分,之后加进去的代码。互联网时间:20世纪90年代科技行业的兴盛产生的一个词多指“快速”的意思。软件时间:文中并没有直接给出软件时间的定义。“做软件的过程当中... 查看详情

梦断代码阅读笔记之四

第七章OSAF的第一个“演示日”,看起来并不顺畅的演示,但是却是实现了以往没有过的模块,是工作人员们几个月的心血。而这整个改变正是许多细节都发生改变的结果。用户的错误理解却真实反映出关注细节、无视上下文的... 查看详情

梦断代码阅读笔记之三

今天我看到了本书的第九章,本章主要讲了关于软件开发的方法论。同时作者为我们介绍了软件缺陷编年史上数量不多但是足以警示世人的惊人灾难。        1962年6月,水手一号探测飞船在发射5分钟... 查看详情

梦断代码阅读笔记之六

第三章--原型与Python我们在编程的前期选择语言的时候是最难过的,这真的是一个痛苦的选择,文中提及很多种语言:C、汇编、Fortran等等。最后,选择了Python语言。在我们的编程过程中也会出现类似的问题,一开始的方向和选... 查看详情

《梦断代码》读书笔记1

《梦断代码》一书记录的是作者罗森伯格对OSAF主持的Chandler项目进行田野调查,通过Chandler开发过程来揭示软件开发过程中一些根本性的大问题。对本书才刚刚阅读了三分之一,就已经忍不住对作者描述的开发过程所感叹,虽然... 查看详情

梦断代码读书笔记

阅读时间:2018年2月5号这次主要是读完梦断代码的的前4章之后,记录下来所得到的感悟。不知道是不是因为没有经历过真正的软件设计,我在读梦断代码的时候感觉到明显的吃力,尽管已经读了大概有4章,还是没有从这4章中提... 查看详情

阅读笔记5

梦断代码阅读笔记5从狗的需要管束引论到程序员需要管束。工程的质量、进度、成本也需要进行策划决策。质量三角,既好、又快、还便宜,同时满足的事情不太可能发生。软件经理非常重要,他制定进度、推动程序员按进度... 查看详情

梦断代码---读书笔记01

                                 &n 查看详情

《梦断代码》读书笔记

?我这周读完了《梦断代码》,这本书详细讲了Chandler软件的开发过程。在讲团队协作时,作者提到了一本书《大教堂与集市》。《大教堂与集市》的作者认为,重要的软件应该像建大教堂一样,由独立的巫师精心打造,在面世之... 查看详情

梦断代码读书笔记

   笔记(一) 首先,作者一开始就向我们介绍了程序员的真实生活:代码、日期、紧张、焦虑。这是我从书中体会出来代表程序员的词语。我第一次感到编程可能是一件辛苦的事,回想自己编程的时候,只是歇一... 查看详情

02《火球——uml大战需求分析》阅读笔记之二

02《火球----UML大战需求分析》阅读笔记   在上一次的阅读笔记中,;我阅读的是开始部分和第一章,总结了其实UML不仅对于软件设计有很大的用处,对于软件的需求的分析也处于很高的地位。现在,读了第二章,真正... 查看详情

《软件需求》阅读笔记之二

这次阅读的是这本书的第二部分,这部分内容相对较多,所以还没有看完。这部分介绍了一些文档的主要内容。首先是项目视图和范围文档的模板,书中一一介绍了这个文档中应该包括的内容。主要就是业务需求,项目视图的解... 查看详情

梦断代码读书笔记

   第一个,乐高之梦。将程序用乐高积木一样拼接起来。对于这一点,现在很多公司都已经多多少少在用了。但是书中也提到,有很多程序员往往不喜欢借用别人的代码,如果看一个文档超过两分钟没有找到自己所需... 查看详情

[分布式系统学习]阅读笔记distributedsystemsforfunandprofit抽象之二

本文是阅读 http://book.mixu.net/distsys/abstractions.html的笔记。第二章的题目是"Upanddownthelevelofabstraction"。这一章里面,作者主要介绍了分布式系统里面的一个重要概念:CAP理论。什么是CAP理论呢?就是说在任何情况下,分布式系统... 查看详情

阅读笔记3

梦断代码阅读笔记3Chandler项目并没有真的“正在“改变世界(至少尚未开始)。但Chandler项目正是为改变世界之梦所驱动。卡普尔自己以及他的莲花公司还有更多开发者对项目的执着与对灾难的坚持。正是某种意义上的开发者的... 查看详情