大道至简读书笔记之三

书中曾提到从最初的简单编程开始,到现在工程团队的组织开发,实现一个软件是最终的目的,所以,实现是软件开发的本质需求。正是由于实现的需要语言工具,方法,过程和实现对象。为了实现更大规模的软件系统而有了团队组织模式,而团队的协作决定了过程模型的产生。工具的产生依旧是处于软件实现的需要。在软件工程的体系中,实现作为软件开发的本质需求和基本动因,如同上帝之手在推动这几十年来的软件工程理论体系的形成。

思考问题的方法可以是由点及面的,也可以是统揽全局的。换成业界最常用的词汇,就是“自上而下”还是“自下而上”的区别。 “牛屎图”中描述的工具、方法与过程也被称为软件工程的三个要素。在本书中他们被分解开来思考,并不是要孤立这个三个层面。它们实际上是相互作用的。例如“过程”问题,就既有实施过程的工具,也有相关的过程方法理论。我虽然说方法是“基于一种数据结构的编程实践的结果”,但这实在一种非常狭义的定义。这个定义在过程的开发环节是有效的(或者说是对“开发方法”的定义) 。然而“需求”、“设计”、“测试”等等其它环节也有各自的方法论,即使站在具体环节之外,过程本身也有方法论的问题,这还不包括管理方法等等在内。

时间: 2024-12-10 01:35:18

大道至简读书笔记之三的相关文章

大道至简读书笔记之一

大道至简是一本“阐明软件工程的思想核心”的书,全书分为八章,从各个角度全面,细致而深刻地分析了工程中各个环节的由来,价值和内在关系.作者对于章节的安排是基于其对软件工程的总结给出的,而作者整体思想则体现在了其在书中提出的软件工程层状模型图里.从章节的安排可以看出,本书的前面六章,作者为我们详细解析了软件工程里各个工程元素的基本概念,从程序的实现到方法,再到过程.工程,最后到组织.第七章是承前启后的一章,因此以这一章作为样张也是比较用心的一种做法.而从第八章开始,作者为我们揭示了软件工程里各个工程

大道至简读书笔记(1)

今天读了一部分大道至简,开篇的引言让我很震惊,首先作者写这篇文章的目的很让我敬佩,不为盈利,只为让好的思想流传下去,能够让更多的人学习到有营养的东西,能够更好的为社会做贡献. 后又引用了<愚公移山>中的一段话,在这里和大家共勉: ”虽我之死,有子存焉:子又生孙,孙又生子:子又有子,子又有孙,子子孙孙,无穷匮野,而山不加增,何苦而不平?'' 这段话表现了愚公移山之决心,精神之伟大无不令我辈折服,我辈当着重学习这种精神,将这种精神在编程的道路上发扬广大,所谓“世上无难事,只怕有心人.” 我们需拥有

大道至简 读书笔记01

粗略的看了书本开头两篇序,以及它的章节目录,大概了解了这本书主要讲什么.其实它并不是我想象中的给我这个阶段的人讲这么压缩你的代码.怎么写的更加精妙之类的,倒像是给已经走出校门,要真正承接项目挣钱的人看的. 书中有些例子看的时候的确发人深省,比如,让作者哆嗦的那句“那我们就开始开发吧”.回想一下自己拿到老师的题目何尝不是如此,就算还没想好到底怎么实现这个问题也一定要把include.iostream之类写好再发愁.这大概是一个现在看来无伤大雅的行为吧.我们习惯于小程序的开发,对于一些复杂的无法一念

大道至简 读书笔记02

这本书的作者一看就知道是一位实际参与软件工程经验丰富的人,他在几十年的工作之后写下了这本书,用非常通俗的语言告诉我们那些“雷区”(想来想去不知道用什么词形容,姑且暂用). 可我想,事实上,我们现阶段作为未出校门的学生,并没有实践的经验,对这个行业也没有很深的认识,很多东西其实在我看来是有些看不懂的,所以,一条一条来看,这本书的确有我们当下的影子,有我们值得吸取的东西.但是很可惜,由于我自身高度的不足,所以看不懂的部分多过看得懂的.也许这就是不是一个层次的人就无法理解那个层次的事的情况吧. 在软件

大道至简阅读笔记之三(7-8章)

第七章讲的是现实中的软件工程,以IBM为例 讲了ibm为何购并rational,为何在语言方面选择支持java,以及出于同样的理由选择亲近开源软件界.同样borland也从开发工具场上的位置跳出来,在语言上寻求中立,作为工具开发商,borlan拥有了实现alm所需的绝大多数软件产品,并且开始并购与实现alm体系相关的公司迅速不全了alm作为一个工程体系在理论方面的不足.而微软在工具方法和过程方面并非都停留在理论阶段而是都有具体的实现 “项目管理要不要考虑成本问题”作者以一个小例子提出评价完成一个

大道至简读书笔记之二

书中曾提到客户不会用C,难道就会用UML?作为开发人员,我们当然希望用户能学习或者精通c语言,这样客户就知道开发人员正在做什么,或者,这样的客户还能以c语言的方式告诉开发人员他们究竟想要什么.可是,要求用户学习c语言明显是自杀式的行为.这样的用户学会用c语言向开发人员描述需求时,可能他就已经被老板开除了,因为没有用户会笨到愿意用c语言来描述他们的需求. c语言是程序员与计算机交流的语言,而不是他与客户交流的语言.程序员面对的是计算机,但计算机不是客户.所以,我们在做用户需求分析时,不要希望用户能

大道至简阅读笔记之三

世界上,没有免费的午餐,更没有强迫你走入的陷阱,一切取决于你自己的选择! 投资中一个非常重要的原则是君子不立于危墙之上!危墙不一定会倒,有时候甚至还能够给我们带来意想不到的收获,可一旦倒了,要命! 什么是“炒”股票?“炒”就是把东西放在火上越来越少的过程.股民把什么东西放在火上越来越少呢?所以股票不能炒,应该叫价值投资.  失败和成功也许就是在天亮前最黑暗的一刻坚守与放弃的区别.坚持者成功了,放弃者失败了.我们与成功并不遥远,许多非凡的成就只不过是简单坚持的结果,关键是要守住你的心.  鹤立鸡群

大道之简读书笔记1

这本书作者上来就引用了愚公移山里的一段话:“虽我之死,有子存焉:子又生孙,孙又生子:子又有子,子又有孙.子子孙孙,无穷匮也.而山不加增,何苦而不平?”把愚公移山看成一个团队对软件进行开发 .浓缩了项目组织者.团队经理.编程人员.技术分析师等众多角色的优秀素质.在愚公的论述中,我们看到了编程的根本:顺序.分支和循环.庞大若“愚公移山”这样的工程,都是可以通过这样简单的编程来实现的.这,就是编程的精义. 里面说过:程序=算法+结构.编程作为一种行为,只需要知道其逻辑方法就可以了.所谓编程实际上是把一

大道至简读书笔记一

本书一开始就用了愚公和李冰两人的例子.我觉得他们代表了两种编程人员:一种只会埋头编代码,花大量的时间,最终或许把功能都实现了,但是花费了大量的时间和精力.另一种善于思考,不是一上来就是敲代码,而是先对问题进行分析,找出问题的切入点,将问题简单化,能快速的将代码的功能实现,效率很高. 我认为身为一个程序员,应该学习一下李冰,一味埋头苦干,很容易导致出错,编程成果也跟不上时代.无论做什么行业,善于思考,寻找正确的切入点是很必要的素质.