Week2:阅读笔记与思考
《构建之法》这本书的内容通俗易懂,每一个知识点都有许多事例佐证,阅读起来不像其他教科书那样枯燥无聊。但阅读过第一、二、十六章之后还是产生了几个疑问,以及更深层次的思考。
第一章
问题1:
第一章第13页中提到“除了学术水平名列前茅的学校,其他学校的这些院系大部分老师做的都是偏工程方面的研究,大部分学生毕业后也投身于解决具体的工程问题,这跟软件学院、软件工程系的研究和培养方向非常雷同”。
据我所知计算机科学专业的设立远早于软件工程专业。且计算机科学侧重理论科研,软件工程侧重应用实践,但书中提到的这一现象,是不是一定程度上反应出大部分国内高校的计算机科学专业偏离了设立该专业的初衷,有着急功近利的趋势,使得沉下心来做理论的学生越来越少?这一现象是不是也与造成国内计算机科学的学术氛围和能力不及国外,越来越多的学生选择出国深造有关?
第二章
问题2:
第二章第27页问答中提到的“如果你的模块中的某个错误处理路径很难达到,那你也许要想想是否可以把这个错误处理拿掉”。
我对这句话的理解是:如果一个处理错误的方法几乎用不到,可以考虑删除这个方法。然而第一章中举的飞机的安全功能例子说的是任何一个错误都要考虑到,任何一个错误处理方法都不能少。两者之间是否相互矛盾呢?
问题3:
第二章第38页中提到的一个软件设计原则“开放-封闭原则”:软件实体应该是可以扩展的,同时是不可修改的。不允许修改的内容是:对模块行为进行扩展时,不必改变模块的本身。
结合书中前面的内容,软件的需求是经常变化的,如果在软件的开发中需求变化了,有增有减,原来的模块有些内容用不到了,根据开放-封闭原则,需不需要在扩展模块时将需求改变后无用的部分删除?
第十六章
问题4:
第十六章第344页提到的例子:研究者提出的新版的键盘布局,使用起来比老款键盘布局更便捷高效,然而却没有得到普及,创新失败了,原因是人们已经习惯了QWERTY键盘,所谓先入为主的观念。
根据这个例子,我联想到了手机的发展史,当初诺基亚、摩托罗拉等手机厂商的滑盖、翻盖手机几乎垄断了手机市场,然而苹果iphone一代的出现,人们知道了更便捷的触屏手机,到了iphone4这一代,市场上老式的滑盖、翻盖手机几乎已销声匿迹了。同样是更便捷高效的创新,同样面临的挑战是人们先入为主的观念,为什么苹果成功了,而新款的键盘布局却失败了,这是为什么?是否这其中还有其他导致创新成果或失败的因素在起作用?
综上,就是我阅读完第一、二、十六章以后产生的疑问以及对书中内容的思考。
Week2:阅读笔记与思考的更多相关文章
- Week4-作业1:阅读笔记与思考
我在这三天时间里阅读了<构建之法>的第四章和第十七章,产生了一些疑问和深层次的思考. 第四章 问题1: 书中第68页提到“注释(包括所有源代码)应该只用ASCII字符,不要用中文或其他特殊 ...
- Week4-作业1:《构建之法》第四章、第十七章 阅读笔记与思考
第四章 两人合作 这一章是讲述了两人结对编程的一些东西,包括一些代码的规范,还有结对编程的优点.怎么做.以及一些注意事项. 1.“错误处理 当程序的主要功能实现后,一些程序员会乐观地估计只需要另外 ...
- <<UML大战需求分析>>阅读笔记(2)
<<UML大战需求分析>>阅读笔记(2)> 此次读了uml大战需求分析的第三四章,我发现这本书讲的特别的好,由于这学期正在学习设计模式这本书,这本书就讲究对uml图的利用 ...
- CI框架源码阅读笔记4 引导文件CodeIgniter.php
到了这里,终于进入CI框架的核心了.既然是“引导”文件,那么就是对用户的请求.参数等做相应的导向,让用户请求和数据流按照正确的线路各就各位.例如,用户的请求url: http://you.host.c ...
- 【读书笔记与思考】《python数据分析与挖掘实战》-张良均
[读书笔记与思考]<python数据分析与挖掘实战>-张良均 最近看一些机器学习相关书籍,主要是为了拓宽视野.在阅读这本书前最吸引我的地方是实战篇,我通读全书后给我印象最深的还是实战篇.基 ...
- ULMFiT 阅读笔记
ULMFiT 阅读笔记 概述 这篇文章从文本分类模型入手,主要提出了两点:一是预训练语言模型在大中小规模的数据集中都能提升分类效果,在小规模数据集中效果尤为显著.二是提出了多种预训练的调参方法,包括D ...
- 关于 AlphaGo 论文的阅读笔记
这是Deepmind 公司在2016年1月28日Nature 杂志发表论文 <Mastering the game of Go with deep neural networks and tre ...
- 阅读文章《DDD 领域驱动设计-如何 DDD?》的阅读笔记
文章链接: https://www.cnblogs.com/xishuai/p/how-to-implement-ddd.html 文章作者: 田园里的蟋蟀 首先感谢作者写出这么好的文章. 以下是我的 ...
- Java程序设计(2021春)——第一章续笔记与思考
Java程序设计(2021春)--第一章续笔记与思考 目录 Java程序设计(2021春)--第一章续笔记与思考 Java数据类型 基本数据类型 引用类型 基本数据类型--整数类型的细节 基本数据类型 ...
随机推荐
- Linux—echo命令
echo命令的功能是在屏幕上显示一段文字,起到一个提示作用,常用在脚本语言和批处理文件中来在标准输出或者文件中显示一行文本或者字符串. 命令格式:echo [选项] 字符串 选项参数: -n:不在最后 ...
- jekyll建站详细教程
Jekyll是一款静态博客生成器,也是github page支持的后台引擎,所以如果你有以下需求,极力推荐使用jekyll搭建博客,>>浏览我的博客 个性化的展示界面,站点逻辑 个性化的域 ...
- Oracle OEM启动方法
首先要启动 listener: lsnrctl start 对于dbconsole:emctl start dbconsole
- 【BZOJ1053】[HAOI2007]反素数
[BZOJ1053][HAOI2007]反素数 题面 bzoj 洛谷 题解 可以从反素数的定义看出小于等于\(x\)的最大反素数一定是约数个数最多且最小的那个 可以枚举所有的质因数来求反素数,但还是跑 ...
- AGC 007 D - Shik and Game
D - Shik and Game 链接 题意: 数轴上有一个人,从0出发到E,速度为1.数轴上还有n只熊,每只熊会在经过后的T时刻后产生一个金币.给定E,T以及n个熊的坐标pi,求收集完所有金币并到 ...
- spark遇到的一些问题及其解决办法
1.报错:ERROR storage.DiskBlockObjectWriter: Uncaught exception while reverting partial writes to file ...
- LOJ #6089. 小 Y 的背包计数问题
LOJ #6089. 小 Y 的背包计数问题 神仙题啊orz. 首先把数分成\(<=\sqrt n\)的和\(>\sqrt n\)的两部分. \(>\sqrt n\)的部分因为最多选 ...
- Linux之服务器介绍
服务器,也称伺服器,是提供计算服务的设备.由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力. 服务器: 服务器指的是网络中能对其他机器提供某些服务的计算机系统 ...
- node的 node-sass@^4.11.0 出现:npm: no such file or directory, scandir '.../node_modules/node-sass/vendor'
解决办法: 查看node_modules文件夹,发现,并无vender 文件夹.如下图: 2. 在 node_modules/node-sass 下创建 vendor 文件夹 3. 最后运行: n ...
- Youtube高清视频下载的3种方法
经常看视频的朋友都听说或使用过youtube, 它是一个综合性的视频网站,包含的内容多种多样,能满足不同的人的需求,最要的是广告少,资源良心,不像有些网站,动不动就是1分种以上的长广告.有些因为工作 ...