构建之法读后感
这几天在老师的推荐下读了《构建之法》这本书,总的来说感触很深,收获一般般吧,以下是我的见解。
首先,这本书比教科书有趣的多啦,里面有四个个性不同的程序员,阿超,大兵等等。全书以日常工作中常常出现的问题来引发他们的讨论,语言诙谐幽默,让读者在轻松快乐的气氛中学会知识,比如1.1节通过3个简短的对话和一个生活实例,启发我对什么是程序,什么是软件,什么是软件工程,没有使用到算法需不需要学习、掌握,软件和算法,数据结构有无关联等问题的思考。仔细想想发现自己对这些概念模糊,毫无理解。通过继续往下看,我才渐渐的明白了一行行的代码是源程序,能满足各种功能的是应用软件,能保证维修的是软件服务…..也了解到了一个软件不是简简单单就能说写就写的,还需要考虑各种因素,如人们的需求,功能的可行性。当软件团队通过通力合作,克服重重困难写出软件后,需要考虑软件应用问题,是免费提供他人使用,还是收费,还是设有不同的版本再进行收费,这时候我不仅仅要了解什么是软件,还需要知道什么的软件企业的商业模式,要好好的遵循软件行业的职业道德规范。
其次,这本书还善于对比论证说明,通过介绍航空的发展阶段,使我明白了软件的发展和其差不多,一样需要从有想法到动手实现,再到不断探索,改进,扩大,形成一个成熟的体系。通过商业软件和爱好者程序,加强了我对商业软件开发的重视,明白开发软件不能随心而行,要多从客户的角度出发,考虑问题,只有充分考虑全面,才能快速解决突发情况,减少用户损失。只有自己能善于发现问题,解决问题时,才能使得自己更进一步,而不是停留练习阶段。1.2节详细的给软件工程下定义,介绍软件工程的特殊性,介绍软件工程中的“工程”的由来,讲述了软件工程与计算机科学的关系,软件工程的知识领域,强调了软降工程的目标——创建“足够好”的软件等等,告诉我软件开发中应用工程化原则的重要性;软件工程的魅力;不仅仅要学习好软件工程的知识还要将它和其他学科联合起来学习思考,还要多看书,多多了解软件工程的知识领域,使得自己强大起来;在开发软件时,结合时间,客户需求,争取在最适合的时刻开发出“好”的软件。
“软件团队是由个人组成的,每个人在团队中有独立的流程,把每个人的工作有序的组织起来就是团队的流程”个人是团队不可分割的,团队离不开个人,个人的发展也离不开团队,个人的能力影响整个团队
问题:1.1.2最后提到合格的软件工程师,有什么具体的标准吗?还是说能写代码,又能发现问题解决问题就可以成为了呢?我们现阶段可以从哪方面开始培养自己的开发思维和能力,向工程师迈进?
问题:a.本章4.3.3中的错误处理和第二章提到的单元测试一样吗?
b.本章4.3.3中提到的断言是什么?仅仅从书上写的代码,我理解就是判断语句,这样的理解可以吗?
问题:a.2.1.2中提到的代码覆盖率是指单元测试能将程序中所有的代码都覆盖了,还是将代码实现的功能路径都实现,或是另有解析?
问题:若以后毕业了,刚刚出来的我们仅仅凭借在校学习的知识是远远不够的,一般公司招聘时都会要求有一两年的工作经验或是说有经验的优先,那我们应届生该如何加强自己的价值?公司需要的是为其创造价值的人才,还有机会让我们慢慢学习吗?
问题:a.团队合作模式和开发流程的关系密切?两者能否脱离?