Week2-作业1 《构建之法》1、2、16章观后感

这几天阅读了《构建之法》中的几章,受益匪浅,刷新了很多我对软件工程的认知。这本书让我很惊喜,阅读起来不像其他书一样枯燥,有很多人物的设计,以及对话的形式,非常有趣。

第一章、概述

读完第一章了解了软件工程具体是什么,以及它与类似计算机科学等的区别,还有对bug的定义,以前觉得软件工程和计算机差不多,看了书过后才发现其中的不同,一个比较偏科研,一个比较偏实践,悟清了许多之后,还有一些不太能明白的问题:

问题1:

我看了这一段文字 “中国大陆的高校中大致有下面三种将计算机软件的机构:计算机科学与技术系或学院、软件学院、软件工程系或学院”,我还是不太能明白这三个的区别,在阅读后我了解到了软件工程和计算机科学的区别,但是软件和其他两个的区别还是很模糊,特别是软件学院与软件工程学院,我们总是将它们是看成一体,书里说“软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程。”而“软件=程序+软件工程”,那么软件工程系对于比软件的亮点在哪里呐?软件工程为什么不是和程序相交叉的东西,而是可以分离的两个内容?

问题2:

我看到“如果一架民用飞机上有需求,用户使用它的概率是百万分之一,你还要做这个功能么?你会选择:1.根本不考虑 2.如果没时间实现这个功能,就算了 3.做了,但是不告诉用户 4.做了,而且不厌其烦地告诉用户如何使用”,第一次看到这里的时候我毫不犹豫选择了4,但当我看完了第十六章后,又有了一个困惑,因为很多东西做出来,不仅要考虑市场需要,还要考虑效益,还有其他许许多多一系列的问题,那么如果一个功能用到的概率几乎为零,那么考虑到效益以及人力,我们究竟需不需要做这个功能呢?就像我们吃烧烤,烧烤是会致癌的,但是几率也很小。有很多创新功能其实是可以更好地服务,但是成本很高,用到的几率又小,我们该怎么选择?

第二章、个人技术和流程

看了第二章了解到个人开发需要做什么,看过才体会到软件工程真的是很复杂,各种测试,不仅仅只是写代码而已,每一类都需要测试,这样才能保证在之后如果有问题出现能够更加快捷地找到错误所在。

问题1:

在看完了单元测试后,单元测试是无论哪个程序都需要吗?简单的程序也需要吗?我感觉单元测试是很麻烦的,细化到类。我看了一些资料后发现当今程序员并不是太爱写单元测试,那有什么现实的缺陷?

问题2:

在看到“单元测试应该集成到自动测试的框架中。”我不太明白在这么复杂的情况里如何自动化呢?这样会不会引出其他的错误?

第十六章、IT行业的创新

看过这一章了解到创新在IT行业的困难,以前一直以为创新都是很受支持与推崇的事,没想到却有这么多绊脚石,现实要考虑的因素是非常大的,要考虑到资金问题,效益问题,甚至是政治问题,创新还要经过方法的计算来考虑究竟要不要做这个创新,究竟应该在哪方面创新也是很大的问题。

问题1:

我们从小到大受到的教育都告诉我们要创新,那么现在我们究竟应该怎么做呢?创新是为了未来未来更好地服务人类还是只为了收益?那么创新的意义到底是什么呢?

原文地址:https://www.cnblogs.com/benmatt/p/8593660.html

时间: 2024-10-29 05:05:00

Week2-作业1 《构建之法》1、2、16章观后感的相关文章

第一次作业(构建之法8,16读后感)

第十六章 我的第一感觉是在IT行业中,创新的思维是非常重要的.现在得社会发展这么迅速,很难有什么创新,有些人有创新的想法,却没有对应的技术,有些人有高超的技术,却对这门技术没有创新的领悟.当我们有时灵光乍现时,要抓紧记下并自己亲手实践,这样才会有成功的可能,而且创新有时很简单,或许并不需要过硬的专业知识,也未必是自己擅长的领域,有时只是脑中产生的一个简单的想法就有可能是通向成功的关键钥匙.创新有时靠的并不是你一人的努力,多和你的团队进行沟通交流,大家交换想法互相补足,这样才有可能让创新思想更加丰

0320 《构建之法》前三章观后感

第一章.为我们解释什么是软件,什么是软件工程,读完这章对这些概念有一定的认识这章让我明白,代码不能盲目的敲,好的软件并非两三天,并非一两个人就能赶出来的,需要大家的精诚合作.同时,在编写程序之前,还需要做一系列的分析.设计,要满足客户的需求,后续还要对软件进行测试.维护等.在这之前,我一直觉得能把程序运行,能有正确的结果,那就完成任务了,可这只是整个软件流程的一部分而已.看了邹老师的书,才知道其实创新有很多的方面,除了技术,还有商业思路,差异化等等,这些都给了我很大的感触,作为一名程序员,我们不

构建之法第15,16章

15稳定和发布阶段 在稳定阶段的初期,团队只要决定需要修复哪些缺陷,然后团队成员就会进行必要的设计.实现.测试工作,并签入代码修改.但是,随着项目进展和发布日期的临近,团队还要保证修改方案不会给产品带来负面的影响.这时,还要对修改方案进行会诊,包括以下三个方面: 第一步:开发者提交参加会诊的Bug和修改方案 第二步:会议决定是否同意修改方案 第三步:执行 16IT行业的创新 创新有时候只是一瞬间的想法,如果付诸行动,那么就有可能变成事实.创新并不是指一昧的抛弃前人的思想,进行前无古人的创造,有时

读《构建之法》第四章 、第十七章

第四章    两人合作 通过对于<构建之法>第四章的阅读使我对代码规范 . 代码复审 . 以及结对编程有了更加深刻的认识,所谓代码规范可以分为两个部分,代码风格规范和代码设计规范,代码风格规范的原则是:简明 . 易读 . 无二义性,代码书写的形式,变量命名的方法,注释程序如何工作都有详细的介绍,令我受益颇多.代码设计规范不光是程序书写的格式问题,而且牵涉到咸亨需设计 . 模块之间的联系 . 设计模式等方方面面,函数的设计,语句的使用,错误的处理,这些都是我们在进行程序设计的时候需要注意的地方.

构建之法五、六章读后感

在本周我主要学习了构建之法的第五章和第六章,第五章主要讲述团队和流程,第六章主要讲述敏捷流程: 软件团队的模式有:主治医师模式.明星模式.社区模式.业余剧团模式.秘密团队.特工团队.交响乐团模式.爵士乐模式.功能团队模式.官僚模式: 开发流程包括:写了再改模式.瀑布模型.瀑布模型的变形(生鱼片模型.大瀑布带着小瀑布): Rational Unified Process统一流程(RUP):包括业务建模.需求.分析和设计.实现.测试.部署.配置和变更管理.项目管理.环境: RUP的四个阶段包括:初始

构建之法读后感----第1章 绪论

首先,文章对于程序.用户需求.工程等等概念用了阿超给儿子编写的一个出题程序来分别解释了个中的含义,尤其是程序和工程的区别,程序大概就是用很多语言或工具编写的一个简单能实现目标要求的一行行代码,而工程就是在这个程序的基础上不断满足用户的需求.修复程序的bug.提供后续维护等服务. 需求分析:梳理需求,逐步展开后续工作,如设计(软件架构).实现(写数据结构和算法),测试,发布软件 软件=程序+软件工程(软件企业=软件+商业模式) 软将工程的核心部分:构建管理.源代码管理.软件设计.软件测试.项目管理

《构建之法》第十七章读后感

通过阅读<构建之法>第十七章,不能说对我造成了什么深远的影响,但是还是感触颇深: 第一,工作分配的重要性,说道工作分配,不得不说我们个小组的组长们,组长不仅仅是一个团队的领导者,更是这个团队的灵魂.它不仅需要了解随时掌握各组员的动向,更重要的是,他需要了解各组员的能力,然后根据个人的能力,然后再去非陪相应的任务,只要这样才能做到“物尽其用”,才能更好的完成我们的项目,有时甚者能更创造出以外的效果,达到更完美的状态.这不仅是组长的能力  其实其无时无刻也体现着我们这个小组的团结力和创造力.当初选

《构建之法》第三章学习心得

这周我学习了<构建之法>第三章,讲述了软件工程师的成长.软件系统的绝大部分模块都是由个人开发或维护的.在软件工程的术语中,这些单个的成员叫做Individ-ual Contributor(IC).IC在团队中的流程是怎么样的呢?以开发人员为例,流程如下. 1.通过交流.实验.快速原型等方法,理解问题.需求或任务 2.提出多种解决办法并估计工作量 3.其中包括寻找以前的解决方案,因为很多工作是重复性的 与相关角色交流解决问题的提案,决定一个可行的方案 执行,把想法变成实际中能工作的代码,同时验证

阅读《构建之法》第四章感想

课下阅读<构建之法>第四章,自己有以下一些感想. 1.我们写的代码最终都是要给人看的,所以代码规范化是一个优秀编程员必备的良好习惯,而且若是在团队里工作,那么代码规范更加重要.编程人员要遵循的代码风格的原则是:简明,易读,无二义性.以后自己要养成规范代码的习惯. 2.复审也是不可缺少的一个步骤,软件工程中最基本的复审手段就是同伴复审,找熟悉代码,有经验的人来进行复审. 3.当今时代,一个人能发挥的力量越来越小,团队的力量日渐重要,因此,如何合作,很关键.两个人合作,如何影响对方,要因人而异,因

《构建之法》第四章

<构建之法>第四章讲的是两个人的合作.结对编程.结对编程往往只需花费大约一半的时间就能编写出质量更高的代码. 代码规范方面,在给函数或者类取名的时候要严谨,不能写一些没意义的名称:在一些代码后面可以加些注释来说明此行代码的作用,在复审方面,我觉得自我复审时最好的,刚写好的代码脑袋里印象深刻,能很好的解决逻辑错误和算法错误. 结对编程方面,书中生动形象的说明了开发者的搭档关系,在结对的时候怎么分配任务,怎么通力合作.互相帮助,在两人的合作过程中,怎么磨合.互相提高水平,在遇到问题或者矛盾的时候,