读《构建之法》读后感

读《构建之法》读后感

作为一名小白,我也深知“程序+软件工程=软件”。在此之前我们学习过一个个从小到大,从简到繁的程序,到了今天才知道这些只是作为一名合格的程序员的第一步,《构建之法》这本书从专业的角度为我们阐释了什么是软件工程。

通过《构建之法》这本书我初步了解到了如下内容。

第一章讲诉了什么是软件工程,其中还掺杂了几个例子,让我更好的理解软件工程的概念,同时使我觉得这本书不会太枯燥无味,加强了我看书的耐性。 第二章向我们讲诉了单元测试,回归测试,效能分析工具。但是读第二章时,很多东西都不懂,例如VSTS,百度后才知道是一款由微软开发的一套开发工具。包括Release版本和Visual Studio,我都需要通过百度才能了解到一些。

第三章提到了成为软件工程师所要具备的条件,分别是:1.积累软件开发相关知识,提升技能技术。2.积累问题领域的知识和经验。3.对通用的软件设计思想和软件工程的理解。4.提高职业技能。5.实际成果。这让我认识到自己离一个软件工程师还有很远的距离。 第四章讲诉了在我们写代码是应该要注意代码的规范,不能够只能让自己看的懂,也要让别人看得懂。在合作中在客观全面的对待自己的结对伙伴,懂得相互鼓励,相互学习。 第五章为我们介绍了团队合作的几种模式,以及团队中的几种开发流程。让我明白从现在开始就应该着重培养自己的团队合作意识。

总体上软件工程(SoftWare Engineering)的框架可概括为:目标、过程和原则。

软件工程目标:生产具有正确性、可用性以及开销合宜的产品。正确性指软件产品达到预期功能的程度。可用性指软件基本结构、实现及文档为用户可用的程度。开销合宜是指软件开发、运行的整个开销满足用户要求的程度。这些目标的实现不论在理论上还是在实践中均存在很多待解决的问题,它们形成了对过程、过程模型及工程方法选取的约束。

软件工程过程:生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最完整最正确的产品呈现在用户面前。

问题1:我们现阶段可以从哪方面开始培养自己的开发思维和能力,向工程师迈进?

问题2:我们是否应该赶在毕业前成为一个真正的软件工程师?

问题3:什么是断言?

问题4:团队合作模式和开发流程的关系密切?两者能否脱离?

问题5:在单元测试中,一定要要求代码覆盖率达到100%吗?

问题6:那我们应届生该如何加强自己的价值?公司需要的是为其创造价值的人才,还有机会让我们慢慢学习吗?

问题7:单元测试应该集成到自动测试的框架中,这是如何实现的呢?

问题8:我们现阶段可以从哪方面开始培养自己的开发思维和能力,向工程师迈进?

时间: 2024-08-07 00:16:31

读《构建之法》读后感的相关文章

读《编程之美》读后感

读完<编程之美>后,我觉得这并不是简简单单的一本有关于编程的书,本书强调的不仅仅是程序或者考题本身,而是思维.这就和小学时看到数学奥林匹克竞赛的题一样,重要的不是套路或者定式,而在于独立思考时被自己激活的无数脑细胞.对于程序,也是一样,思维,才是程序的精髓所在.正如作者所言,书中展现的题目和分析,犹如海滩上美丽的石子和漂亮的贝壳那样,反映出造化之美,编程之美.该书的目的不仅在于揭开微软面试的神秘面纱,更是鼓励更多的编程爱好者从中收获自己的想法,开阔自己的眼界.作者更希望让面试者和被面试者都能够

编程之美(1.2) 读后感-章子怡与最强大脑

<最强大脑>有一期,中间插入娱乐,章子怡记住场上每个人的击球数和进球情况. 比如 第一个人: 第1个球进了,第2个球没进, 第3个球进了,第4个球没进. 记为 0101-5 第二个人: 第1个球没进,第2个球没进, 第3个球进了,第4个球进了. 记为 1100-12 ...她只需要记住 5, 12 即可. 所谓的一个byte可以表达256个值. 其实考察了位运算,或者位域运算. 这个做底层开发的工程师,天天用,是不是可以与Matt Scott做同事了? i / 9 % 3 == i % 9 %

读《编程之美——微软技术面试心得》有感

?这两天我读了一下<编程之美--微软技术面试心得>,扩展了我很多思路. ?其中对一个算法的分析,编写,思考改进,再提出扩展问题,再进行思考.这些步骤会锻炼我们的思维能力. ?开头的序章也很有用,讲述了面试流程,面试官面试的目的以及想要考察应试者思维,分析问题的方式,面对在规定时间注定完成不了题目时应试者的表现状态,是雨露均沾还是专盯几道题.还有微软开发职位的不同区别,职位选择的建议,职位书籍路线. ??如aR(Assistant Researcher)助理研究员,他们的每个专利申请(无论是否被

编程之美-分层遍历二叉树

问题:给定一个二叉树,要求按分层遍历该二叉树,即从上到下按层次访问该二叉树(每一层将单独输出一行),每一层要求访问的顺序为从左到右,并将节点依次编号.那么分层遍历如图的二叉树,正确的输出应该为: <span style="font-size:14px;">1 2 3 4 5 6 7 8</span> 书中还给出了问题2:打印二叉树中的某层次的节点(从左到右),其中根结点为第0层,成功返回true,失败返回false 分析与解法 关于二叉树的问题,由于其本身固有的

读书问题之《编程之美》 -----12061161 赵梓皓

我阅读的书是<编程之美> 刚开始的时候阅读序,就觉得控制cpu利用率这个问题很好玩,所以重点看了这部分和解决办法,问题也都大部分是这部分的.那么问题就来了(挖掘机技术xxx?中国山东找蓝翔) 咳咳,问题在下面: 1.关于问题的提出.(也是一点点建议) 本书的主要内容是告诉读者如何思考问题和解决问题.但是提出问题也是很重要的,正如爱因斯坦所说“提出一个问题往往比解决一个问题更重要”,很多面试题(比如井盖为啥是圆的)我觉得正常人很少会想到.所以,这个问题是怎么想出来的...我很好奇.也希望作者能够

《编程之美》3.6判断链表是否相交之扩展:链表找环方法证明

先看看原题:<编程之美>3.6编程判断两个链表是否相交,原题假设两个链表不带环. 为了防止剧透使得没看过原题目的读者丧失思考的乐趣,我把最好的解法隐藏起来.由于这个问题本身的解答并不是本文的重点,扩展问题也采用这种形式呈现. 注:位于(*)符号之间的文字出自于:http://blog.csdn.net/v_july_v/article/details/6447013,作者v_JULY_v. 用指针p1.p2分别指向两个链表头,不断后移:最后到达各自表尾时,若p1==p2,那么两个链表必相交 用

编程之美之买票找零

题目:假设有2N个人在排队买票,其中有N个人手持50元的钞票,另外有N个人手持100元的钞票,假设开始售票时,售票处没有零钱,问这2N个人有多少种排队方式,不至使售票处出现找不开钱的局面? 分析:队伍的序号标为0,1,...,2n-1,并把50元看作左括号,100元看作右括号,合法序列即括号能完成配对的序列.对于一个合法的序列,第0个一定是左括号,它必然与某个右括号配对,记其位置为k.那么从1到k-1.k+1到2n-1也分别是两个合法序列.那么,k必然是奇数(1到k-1一共有偶数个),设k=2i

【编程之美】java实现重建二叉树

package com.cn.binarytree.utils; /** * @author 刘利娟 [email protected] * @version 创建时间:2014年7月20日 下午2:03:30 类说明: */ class Node { Node left; Node right; char chValue; Node(char chValue) { left = null; right = null; this.chValue = chValue; } } public cla

编程之美之字符串移位包含问题

[题目] 给定两个字符串s1和s2,要求判断s2是否能够被通过s1做循环移位(rotate)得到的字符串包含.例如,S1=AABCD和s2=CDAA,返回true:给定s1=ABCD和s2=ACBD,返回false. [分析] [思路一] 从题目中可以看出,我们可以使用最直接的方法对S1进行循环移动,再进行字符串包含的判断,从而遍历其所有的可能性. 字符串循环移动,时间复杂度为O(n),字符串包含判断,采用普通的方法,时间复杂度为O(n*m),总体复杂度为O(n*n*m). 字符串包含判断,若采

求二进制数中1的个数(编程之美)

求二进制数中1的个数 继京东618店庆时买的<编程之美>这本书,翻了翻,发现里面的题还是挺有意思的,看起来我们觉得很简单的题目,解法却有很多很多种,真是一个比一个巧妙,于是,决定记录一下. 书中的题目如下 对于一个字节(8bit)的无符号数,求其二进制表示中"1"的个数,要求算法的执行效率尽可能高. 就像书中给我们说的一样,我们一般人可能想到的解决方法如下 int countOne(int n){ int count=0; while(n){ if(n%2==1){ cou