构建之法(CH1~CH3)-读书笔记

三个简单的方程式解释了什么是现代软件工程:
1.程序=算法+数据结构

2.软件=程序+软件工程

3.软件企业=软件+商业模式

软件开发的不同阶段可以类比为航空产业:从玩具阶段的纸飞机,到业余爱好的飞屋,再到探索阶段的 莱特兄弟的飞机,最后成为成熟的产业。软

件开发从简单的“Hello World”,到我们现在用js写写网站,再到我们一直追寻的新技术与创新,并为着成熟的工业而奋斗,这就是软件工程的“软件开

发流程”。

在个人技术和流程方面,有三个非常重要的概念:

单元测试:测试程序中最基本的单元,如“类”和基本功能点,要测试API中每个方法每个参数,单元测试必须由最熟悉代码的人(程序的作者)来写。

回归测试:新的构建不一定就是进步,可能也会导致一个模块或功能重新出现问题,出现“倒退”。我们管理源代码时,一个模块只负责一个功能。

个人开发流程:从大学生和工程师在PSP阶段中的所花时间百分比对比中,我惊奇的发现从学生到职业程序员,没完没了写代码的时间反而有所减少,

需求分析和测试反而是菜鸟非常需要重视的环节。

作为一名以初级软件工程师自比的学生,积累软件开发相关知识与提升技术技能是榜单上第一位的成长方式。这里有瓦茨·汉弗雷提出的一个类爱迪生公

式:软件领域≈5%创新爆发+95%维护测试,可见脚踏实地地磨练技术才能使问题变成低层次问题,在教育学领域,这样的问题也就成为了我们精通的

舒适区的一部分。

 

所谓“没有人能在学校里掌握所有将来会用得到的只是才离开学校”,学习者正如摸着石头过河的人,学习者正如摸着石头过河的人,踩着前人经验与教训铺

好的石头上不断向前,而分析麻痹等思维误区导致的停留,可能让我们在等待之中看着这条河越来越宽,所以实际工作里,在专攻与略懂相结合的方式之中

不断学习,才能保持进步。

原文地址:https://www.cnblogs.com/chenzhikai/p/8552423.html

时间: 2024-08-28 09:10:50

构建之法(CH1~CH3)-读书笔记的相关文章

《构建之法》需求分析 读书笔记

后悔没有早点读完这章,回想团队项目刚开始时做的需求分析,深深感到我们实在太天真.太理想.毕竟没有理论指导,按习惯做调研是容易碰钉子的,不过现在项目还未正式启动,亡羊补牢,为时未晚. 我们踩中了哪些坑? ①未能充分引导用户表达需求 我们采用了问卷调查的方式,但没有做进一步的深入调研.问卷调查有其好处--简单方便.调查速度快.数据易统计,但也有固有的弊端,那就是容易形式化,不易让受调查者充分表达自己的观点.问题或是诉求.出于节约受调查者时间的目的,题目基本设定为多项选择,这会有什么后果呢?填问卷的人

《构建之法》初读笔记

虽然当初决定考计算机研究生的时候就已经做好了要承受很大压力的心理准备,但是真正上课了还是有点吃不消,就像根本没想到会调剂到离家这么远的东师大,我也没想到研究生的课会刚开始就进行编程,跟本科就是计算机的同学比起来我编程的能力差的不是一点两点,这几天耗费了太多的时间导致没有太多时间读这本<构建之法>,在今天提交了作业以后才有空第一次接触这本书. 我本科并不是计算机,计算机相关的课程也几乎没学过,所以书里讲的很多概念对我来说都很新颖很有吸引力,更像一本引人入胜的小说,邹老师用很多生动的例子生动的表述

《构建之法》速览笔记

花了一段时间快速浏览了一遍邹欣老师的<构建之法>这本书,在这里对我的首次阅读做一个小小的总结和疑问.当我翻到这本书的目录时,我首先的第一感想就是,这本书应该是关于现代软件工程管理学的书籍,但是在我快速浏览完了它的电子书时,对它又有了一个新的定位,这本书特别适合我们这些对软件工程半知半解的学生.不知道我的理解是否贴切,书中关于“敏捷开发”这一章节,我个人感觉有点像去年政府提出的“简政放权”--做好政府权力“减法”换取企业市场活力的“乘法”,公司上层领导放权,使得PM带领团队放手去做.那其中我也产

构建之法第一篇阅读笔记

程序=算法+数据结构这句话我估计应该深入每个计算机系学生的心里了,但是就像书中所说的一样除了上数据结构课程我们没有用过任何与数据结构有关的东西,难道老师讲的都是错的吗?构建之法给了我明确的答案,这都是我们就业后所要面临的问题,因此,软件工程概论这门课就显得尤为重要了,它可以帮助我们了解软件工程整体结构,了解其中的各个流程,使我们能够了解到我们今后将会遇到的问题,提前让我们熟悉这个行业,意识到自身所学真正的作用. 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护上的过程.它包含

《构建之法》再读笔记

问题1:书中第二章里有一个对比大学四年级学生和软件工程师个人项目耗时的记录表,对比的数据可以很清楚的告诉我们初学者和初级的专业之间的差距,以及这些差距具体表现在哪些方面,但是这里所说的个人项目难度应该是不高的,这一点从二者的差距可以猜测出来,那么如果是接触到较难的项目呢?是不是又能说明很多道理?比如学习能力.工作经验什么的. 问题2:第三章里说到技能的反面,举例说了魔方的事,有一部电影叫<当幸福来敲门>,里面威尔史密斯落魄生活的转折点就是因为偶然间他给经理展示了当时并没有多少人会的魔方,尽管他

构建之法第二章读书心得

通过阅读第二章的内容,了解到了为什么要进行单元测试.因为软件是由多个人共同完成的,如果某个模块出现问题,那么整个软件都会出错.那么怎么样才能做好测试呢?1.要在功能和参数上验证程序的正确性.2.单元测试最好由代码的作者来写.3.保证测试之后,机器状态保持不变.4.速度要快.5.重复测试结果应该一致.我们还要对程序进行效能分析,保证程序运行的又快又好,占用资源少.效能分析可以通过抽样或代码注入来完成.我们还应该对个人开发流程进行如下所示的规划:预估任务所需时间.分析需求.生成设计文档.设计复审.代

erl_0020 《面对软件错误构建可靠的分布式系统》读书笔记001 “面向并发COPL”

在现实世界中,顺序化的(sequential)活动非常罕见.当我们走在大街上的时候,如果只看到一件事情发生的话我们一定会感到不可思议,我们期望碰到许多同时进行的活动. 如果我们不能对同时发生的众多事件所造成的结果进行分析和预测的话,那么我们将会面临巨大的危险,像开车这类的任务我们就不可能完成了.事实上我们是可以做那些需要处理大量并发信息的事情的,这也表明我们本来就是具有很多感知机制的,正是这些机制让我们能够本能地理解并发,而无需有意识地思考. 然而对于计算机编程来说,情况却突然变得相反.把活动安

项目管理学习——《构建之法》读书笔记

最近终于有时间来读读书了.买了<构建之法>已经一年多了,这次静下心来读完了,收获很大.现在想起自己在上大学的时候学习软件工程是机械工业出版社出版的一本外国书籍的翻译版本,当时由于对于整个行业没有太大的感触,而这本书又全部由专业术语和定义组成,所以当时的课是相当痛苦.而老师通过的这门课程的方式又由各种理论知识考试为准,所以当时学习感觉相当“鸡肋”. 好的地方: 1,情景式.对话式对白,有趣易读.这点非常喜欢,很多实际中碰到的问题在这里可以重现.比如:每日构建,在实际开发中,就会由于各种原因导致不

构建之法的八、九、十章读书笔记

构建之法读书笔记 第八章  需求分析 这一章主要是讲需求的分析,对于一个程序项目来说,我觉得,需求是这个项目的向导,他可以决定程序项目会发展成什么样子.书里面需求这里大致分为两个:软件需求和用户需求. 软件需求:我们不仅仅要考虑到项目功能的需求,要实现的功能,还要考虑到开发过程以及非功能方面的需求,还有综合需求. 用户需求:是针对在用户这个角度,用户最需要的东西.我觉得用户需求在需求分析中较为重要,毕竟每一个要做的程序的根本目的是满足用户的要求.      所以书里面野介绍了九种获取用户需求的调

第一周读书笔记《构建之法》

构建之法读书笔记 #wmd-preview h1 { color: #0077bb } 构建之法读书笔记 沈三景 PB15061249 软件工程 读书笔记 前言 开学前两周,杂事颇多,没有充足的时间阅读<构建之法>,只能每天在睡前阅读约半小时,故只看了前三章.虽如此,但仍收获很多,下面就是我对前四章内容的一些看法和理解,如有理解偏颇之处,望见谅. 第一章 概论 本章主要介绍了软件工程是什么?软件工程的目标是什么?为了解决前一个问题,作者首先提出了两个等式: 程序 = 数据结构 + 算法 软件