Week2-作业1 《构建之法》1、2、16章观后感
这几天阅读了《构建之法》中的几章,受益匪浅,刷新了很多我对软件工程的认知。这本书让我很惊喜,阅读起来不像其他书一样枯燥,有很多人物的设计,以及对话的形式,非常有趣。
第一章、概述
读完第一章了解了软件工程具体是什么,以及它与类似计算机科学等的区别,还有对bug的定义,以前觉得软件工程和计算机差不多,看了书过后才发现其中的不同,一个比较偏科研,一个比较偏实践,悟清了许多之后,还有一些不太能明白的问题:
问题1:
我看了这一段文字 “中国大陆的高校中大致有下面三种将计算机软件的机构:计算机科学与技术系或学院、软件学院、软件工程系或学院”,我还是不太能明白这三个的区别,在阅读后我了解到了软件工程和计算机科学的区别,但是软件和其他两个的区别还是很模糊,特别是软件学院与软件工程学院,我们总是将它们是看成一体,书里说“软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程。”而“软件=程序+软件工程”,那么软件工程系对于比软件的亮点在哪里呐?软件工程为什么不是和程序相交叉的东西,而是可以分离的两个内容?
问题2:
我看到“如果一架民用飞机上有需求,用户使用它的概率是百万分之一,你还要做这个功能么?你会选择:1.根本不考虑 2.如果没时间实现这个功能,就算了 3.做了,但是不告诉用户 4.做了,而且不厌其烦地告诉用户如何使用”,第一次看到这里的时候我毫不犹豫选择了4,但当我看完了第十六章后,又有了一个困惑,因为很多东西做出来,不仅要考虑市场需要,还要考虑效益,还有其他许许多多一系列的问题,那么如果一个功能用到的概率几乎为零,那么考虑到效益以及人力,我们究竟需不需要做这个功能呢?就像我们吃烧烤,烧烤是会致癌的,但是几率也很小。有很多创新功能其实是可以更好地服务,但是成本很高,用到的几率又小,我们该怎么选择?
第二章、个人技术和流程
看了第二章了解到个人开发需要做什么,看过才体会到软件工程真的是很复杂,各种测试,不仅仅只是写代码而已,每一类都需要测试,这样才能保证在之后如果有问题出现能够更加快捷地找到错误所在。
问题1:
在看完了单元测试后,单元测试是无论哪个程序都需要吗?简单的程序也需要吗?我感觉单元测试是很麻烦的,细化到类。我看了一些资料后发现当今程序员并不是太爱写单元测试,那有什么现实的缺陷?
问题2:
在看到“单元测试应该集成到自动测试的框架中。”我不太明白在这么复杂的情况里如何自动化呢?这样会不会引出其他的错误?
第十六章、IT行业的创新
看过这一章了解到创新在IT行业的困难,以前一直以为创新都是很受支持与推崇的事,没想到却有这么多绊脚石,现实要考虑的因素是非常大的,要考虑到资金问题,效益问题,甚至是政治问题,创新还要经过方法的计算来考虑究竟要不要做这个创新,究竟应该在哪方面创新也是很大的问题。
问题1:
我们从小到大受到的教育都告诉我们要创新,那么现在我们究竟应该怎么做呢?创新是为了未来未来更好地服务人类还是只为了收益?那么创新的意义到底是什么呢?
Week2-作业1 《构建之法》1、2、16章观后感的更多相关文章
- <构建之法>之一至二章
身在大学,却想起了在高中的生活和初中的生活,特别是初中的生活,为什么这么说呢!因为<构建之法>,看了其中的两章的内容,为什么想到了初中和高中的生活呢,因为在高中和初三的时候看的最多的就是课 ...
- 软工个人阅读作业2 —— 构建之法与CI/CD
项目 内容 这个作业属于哪个课程 2021春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 个人阅读作业#2 我在这个课程的目标是 阅读思考教材,调研软工工具 这个作业在哪个具体方面帮助我实 ...
- 构建之法 第6~7章读后感和对Scrum的理解
第六章-敏捷流程 第六章主要详细介绍了敏捷流程,在软件工程范畴里,“敏捷流程”是一系列价值观和方法论的集合.这一章以敏捷流程的Scrum方法论而展开,而敏捷流程的精髓就是在于快速的交付. 敏捷开发的流 ...
- 《构建之法》8&16
[8.1] 对产品的生命周期管理好像一直以来都没有引起我足够的重视,在这一段对产品学习的过程中也少有看到相关内容.是因为针对不同产品而言,产品周期的管理太具有个性特征,没有太统一的规则可循吗?我觉得不 ...
- <构建之法>之第一二三章的感悟
第一章 看了第一章,第一章主要是概论,主要讲述软件是什么,是由什么组成的,然后接着陈述软件工程是什么,看了第一章之后,得知,软件工程只是实现软件的一个工具,有了工具做事情才容易.还有进行运维和维护软件 ...
- <构建之法>10,11,12章的读后感
第十章:典型用户和场景 问题 :什么是典型用户? 第十一章:软件设计与实现 问题 :开发人员的标准工作流程就是不断的发现BUg,修改bug来完善功能,在此过程中要等待同伴复审,在这阶段中,开发者应该如 ...
- <构建之法>8,9,10章的读后感
第八章 这一章主要讲的是需求分析,主要介绍在客户需求五花八门的情况下,软件团队如何才能准确而全面地找到这些需求. 第九章 问题:我们现在怎样培养才能成为一名合格的PM呢? 第十章 问题:如果典型用户吴 ...
- Week4-作业1:《构建之法》第四章、第十七章 阅读笔记与思考
第四章 两人合作 这一章是讲述了两人结对编程的一些东西,包括一些代码的规范,还有结对编程的优点.怎么做.以及一些注意事项. 1.“错误处理 当程序的主要功能实现后,一些程序员会乐观地估计只需要另外 ...
- 《构建之法》IT行业的创新 读书笔记 WEEK 5
本周选读邹欣老师的<构建之法>第16章——IT行业的创新. 邹欣老师将本章话题分成五个部分来阐述:创新的迷思.创新的时机.创新的招数.魔方的创新.创新和作坊,博主认为时机和招数这两个部分在 ...
随机推荐
- 【HNOI2014】抄卡组
题面 题解 如果所有的字符串都有通配符,那么只要比较不含通配符的前缀和后缀就可以了. 否则一定有一个串没有通配符.找出这个字符串,然后将所有串与这个串匹配,通配符将\(B\)分成一段一段在\(A\)上 ...
- 我用 Python 爬取微信好友,最后发现一个大秘密
前言 你身处的环境是什么样,你就会成为什么样的人.现在人们日常生活基本上离不开微信,但微信不单单是一个即时通讯软件,微信更像是虚拟的现实世界.你所处的朋友圈是怎么样,慢慢你的思想也会变的怎么样.最近在 ...
- JS(JavaScript)插入节点的方法appendChild与insertBefore
首先 从定义来理解 这两个方法: appendChild() 方法:可向节点的子节点列表的末尾添加新的子节点.语法:appendChild(newchild) insertBefore() 方法:可在 ...
- CSS3新增特性详解(二)
上篇博文主要介绍了CSS3新增特性中的静态特性,比如新的选择器.多背景图.阴影.渐变等.本文主要介绍CSS3中新增的动态特性,如过度.动画.变形等. transitian: -webkit-tran ...
- 执行shell脚本时提示bad interpreter:No such file or directory的解决办法
执行shell脚本时提示bad interpreter:No such file or directory的解决办法 故障现象:在终端直接cd /var正常,在shell脚本中执行则报错.原因是脚本是 ...
- arp与rarp
- sqli-labs学习笔记 DAY8
DAY 8 sqli-lab Page-3 sqli-labs lesson 38 What is Stacked injection? https://blog.csdn.net/Fly_hps/a ...
- 为什么使用React Native
React Native使你能够在Javascript和React的基础上获得完全一致的开发体验,构建世界一流的原生APP. React Native着力于提高多平台开发的开发效率 —— 仅需学习一次 ...
- mkdir命令详情
基础命令学习目录首页 原文链接:https://blog.csdn.net/zwlove5280/article/details/74618041 mkdir 是创建目录的命令. 创建一级目录 mkd ...
- ansible使用1
常用软件安装及使用目录 ansible软件2 ### ansible软件部署安装需求#### 01. 需要有epel源 系统yum源(base epel--pip gem) sshpass---e ...