前言

**本文没有2021真题,不用找了 你们的老师应该会给你们发吧 ·–· 不过我这有2021年往前近三年的题,如果需要可以加我QQ

QQ : 958284846

备注一下您来的原因就行(无偿的。。。。单纯是因为把题放csdn会被请喝茶)
还有一些当时复习网上找的笔记 记的很好很清晰
我自己的笔记提纲已经在本文中了
其他网上找的笔记资料因为不是我的原创可能有版权等问题 不方便放到这 也可以加我QQ)**

正文

上了一学期的软件构造课,看了chp老师抽了半学期的烟,喝了半学期的茶,就是课程内容一点没学会。

***,退钱!!!

原因:
1.内容不分主次,次要的一顿细扣,主要的一笔带过。
2.不管讲的好与坏,起码让大家能听懂你在说啥。好家伙,某hp老师直接让同学们听不清!
3.实验个人感觉难得一批,心态炸了
4.实验难,你当老师的是不是得了解了解同学们卡在哪了,帮个一臂之力,你帮个绵薄之力也行啊,好家伙实验课直接改成朗读课,全程朗读word文档实验手册。行,你朗读,朗读功底还不过关,普普通通的麦克风硬是用出来歌厅感觉,就一个音响硬是用出3D环绕感觉,我…

吐槽完了,虽然老师讲课有很大的提升空间,但是这门课的试依然要考,学分绩也依然得卷,好在自己运气还算不错,期末不吃不喝(bushi)突击了几天(所有2019级计算学部人应该都知道Lab3的威力,在此吐槽下lab3,跟几门考试都冲突,时间根本不够用,学长火炬也不管用了呜呜呜 ) 也算是混过去了这门课。最近要求给补考的xdm写一写考试建议,就把自己之前的复习提纲拿了出来,顺便总结了以下考试经验,一并发出来,希望能对学弟学妹们起到一点点作用。

本文结构:开篇吐槽(如上文)考试总结(仅供参考)(针对复习方法和2021年春季学期软构考试题)个人笔记提纲(仅供参考)(很杂乱,当初写的时候没有计划要发出来,十分抱歉)

如果你不知道期末要考什么,觉得PPT太多,无从下手,后悔于当初上课没有好好学,推荐先把这门课的思路给弄清。

2021春软件构造
软件构造的知识框架十分明确,大体就三个部分:基础知识(就靠背),ADT+OOP,复用维护和健壮性正确性。(也就是下图的三块),按照知识体系复习比较容易一点,如果可以的话至少要把PPT全部看完一遍,好多小的内容都是PPT的原句,甚至和PPT给的例题都十分相似,虽然很多英文,但是内容依旧很重要,不能忽视掉PPT的重要性,这是唯一的官方的复习资料。
如果考试还是按照2021春季学期期末考试题型的话,选择题细致一些,大题快点答,多留一些时间给选择题是因为选择实在有太多不好敲定的内容,思来想去就很费时间。大题认真做即可,每道题都要能想到对应的知识点(例如问是否符合LSP就得回想里氏替换原则都提出了哪些要求)。
上学期最后发的期末考试复习PPT十分有帮助,上边给出了每章节对应的知识点,这些知识点必须掌握,几乎考试都涉及到了(或多或少)。当初刚学完chp老师的软构课也是一头雾水,还好期末考试之前给出了复习PPT,知识体系变得很明确,按照PPT复习之后有一些成效。
下面是我自己考试之前准备的复习内容提纲。。。直接搬到这了。。。内容当时是给自己看的 所以很杂乱… 都是重点内容的提取 可以大概扫一眼…
总结:PPT虽然看起来又臭又长,还是英文的…但是真的很有用,强烈建议完整看一遍 对了还有习题课的内容最好要看并且研究明白。还有就是研究透往年习题(没有答案就很坑,但是可以研究出题的特点)
奥利给! 干了 xdm

2021春季学期 软构期末 复习提纲(仅供参考)
-------------------------------------考试基本概况------------------------------

一三讲 没大题 全是选择 大题基本上都在第二部分(确定)

三 四部分主要是测试
预测:会有一道设计模式的大题;
-------------------------复习----------------------
第一章
代码开发阶段 一定考 100%考 三维视图要记 每个维度都是什么意思
三维视图

质量属性区分内部质量属性和外部属性
eg:代码多少行(LOC):内部属性

第三章
软件配置管理的不同工具 重点
集中式和可分布式
git commit -m -a等等常用操作都是怎么用的
git结构
每次commit都是一个git对象 都是一个树形结构
git最大的变化:存储的是改变后的文件,B版本不会出现A版本没改变的文件,只是一个指针指向A版本的文件
eg. 判断题:一个文件可以出现在不同版本中 (x)
git的版本可以有0个父对象 (他自己就是父对象)
可以有1个
还可以有2个 原因: merge 两个版本合并
只能0 1 2个父对象
可以有多个子版本

第4-8章
java有些错误在运行阶段,有写在编译阶段出错。
最容易静态检测出错的就是类型错误 不匹配
两个集合类,泛型类型不一样,那么他们没有任何父子关系

mutable immutable 考点:defensive copy和表示泄露
表示泄露 100%考
给你个情况,判定是否泄露?
出现了咋办?
为啥没出现?
return一个immutable 不会表示泄露
return一个mutable,就会泄露
防止方法:防御式拷贝

final:引用的改变就会出错

final a指向一个空间,改变他的指向,就会出错。但是改变空间内的值,不会出错

Snapshot diagram必考 100%

前置 后置条件不会让你写 让你判断 (圈的大小,规约强弱)

送分题: ADT操作的四种类型 都是啥 给你一个代码你得知道他是哪个类型(creator observer等)

RI 100%考
看习题课代码题,里边有题要求写RI,停车位

习题课写的很详细

override overload 必考

泛型 必考

两个集合元素父子关系,但是他们没有父子关系!!!不能错!

判定相等

第九章

LSP肯定考
考察方式:给你2个类类 问你满不满足LSP 必考,大题
看ppt概念 父子类是否符合LSP
例如:符合override限制 子类规约比父类强 前置弱 后置强……PPT太详细了
异常:子类的异常不能更粗,得更细
父类抛出异常,子类只能抛出更具体的

协变反协变考小题
协变一般对应override
反协变java不支持,认为是重载,而不是重写

委托
一个类调用另一个类,就是委托。给你一堆类,判定是不是委托

CRP:java不允许对多个类继承,但是允许多个接口实现

白盒黑盒框架 —继承委托

第10-11章
可维护性的常见度量指标

耦合度聚合度 没啥考点

正则表达式:PPT
两种考法考一个:

  1. 给你一段话,请给其写出表达式
  2. 给一个表达式 问你这个表达式描述的是什么

设计模式
给你个需求,问你应该用哪一种设计模式实验
adapter 适配器 接口匹配
装饰器 增加功能 例如stack里push pop太简单了,我想扩充这就是装饰
模板 某一些自定义功能可以用户实现,但是父类,大的流程要固定
工厂
visitor:这个要注意 用来干嘛的得知道 对某一个类来扩充的 扩充功能点
功能先不实现,给他放着,之后再扩充(也就是放一个接入点,之后再写代码)
visitor看ppt

第2 12讲
正确性:断言—太简单了没啥说的(注:这句话不是我说的,是当时老师的原话,我全记下来了而已),注意一点:可以关闭 抛出assert error
健壮性:异常
error也可以catch 但是没有意义,那都是程序之外的(内存不足等),不需要捕获,捕获了也没有意义
异常:runtime异常不用捕获
checked异常要捕获 证明程序没错,外部环境(用户)错了

黑盒测试:要考
白盒测试 了解概念就ok

  1. 测试是一种破坏性的测试(找错误而不是证明正确)
  2. 无法进行完备的测试

祝大家该过的过,该高分的高分!!!

END

哈尔滨工业大学2021年春季学期软件构造期末考试总结及经验分享相关推荐

  1. 信号与系统-2021年春季学期-考试信息

    §01 期末考试 1.考试时间与地点 参考考试的班级主要有两个: 自动化系-自9字班 新雅学院-8字班 考试地点分布为: #mermaid-svg-LiLmJnj3szUYw8Bk .label{fo ...

  2. 2021年春季学期-信号与系统-第七次作业参考答案-第四小题

    本文是 2021年春季学期-信号与系统-第七次作业参考答案 的小题的参考答案. ▌第四小题 ▌ 4. Consider the signal x(t)x\left( t \right)x(t) in ...

  3. 2021年春季学期-信号与系统-第一次作业参考答案-第六题

      本文是: 2021年春季学期-信号与系统-第一次作业参考答案 的参考答案. ▌第六题 MATLAB实验题1 请从网络学堂上下载音频信号,使用MATLAB软件绘制出它的视频联合分布图,分析其中电话号 ...

  4. 2021年春季学期-信号与系统-第一次作业参考答案

    ※ 求解答案参见每道题后面的连接 2021年春季学期-信号与系统-第一次作业参考答案-第一题 2021年春季学期-信号与系统-第一次作业参考答案-第二题 2021年春季学期-信号与系统-第一次作业参考 ...

  5. 2021年春季学期-信号与系统-第一次作业参考答案-第一题

      本文是: 2021年春季学期-信号与系统-第一次作业参考答案 的参考答案. ▌第一题 1.绘出下列各信号的波形: 注:u(t),u[n]u\left( t \right),\,\,u\left[ ...

  6. 2021年春季学期-信号与系统-第十四次作业参考答案-第九小题参考答案

    本文是 2021年春季学期-信号与系统-第十四次作业参考答案 中各小题的参考答案. §09 第九小题 9.证明DFT的对称性质: 若:DFT{x[n]}=X[k]DFT\left\{ {x\left[ ...

  7. 2021年春季学期-信号与系统-第十四次作业参考答案-第八小题参考答案

    本文是 2021年春季学期-信号与系统-第十四次作业参考答案 中各小题的参考答案. §08 第八小题 8. 以下序列的长度为\nN.,求其离散傅里叶变换的闭合表达式. (1) x[n]=sin⁡(ω0 ...

  8. 2021年春季学期-信号与系统-第十四次作业参考答案-第七小题参考答案

    本文是 2021年春季学期-信号与系统-第十四次作业参考答案 中各小题的参考答案. §07 第七小题 7.已知x[n]x\left[ n \right]x[n]是长度为N的序列.X[k]=DFT{x[ ...

  9. 2021年春季学期-信号与系统-第十四次作业参考答案-第六小题参考答案

    本文是 2021年春季学期-信号与系统-第十四次作业参考答案 中各小题的参考答案. §06 第六小题 6.已知序列x[n]x\left[ n \right]x[n]的长度为128,h[n]h\left ...

最新文章

  1. Little Sub and Sequence
  2. SMT精密电阻对照表
  3. 应用深度学习(台大陈蕴侬李宏毅) Part1
  4. 高度有用的Java ChronoUnit枚举
  5. java集合笔试编程题_Java 基础算法及编程笔试题集合
  6. Python编辑统一缩进(Pycharm)
  7. 团队项目:过山车游戏的设想
  8. php点击按钮变文字,点击按钮文字变成input框,点击保存变成文字的实现代码
  9. 小D课堂 - 新版本微服务springcloud+Docker教程_4-03 高级篇幅之Ribbon负载均衡源码分析实战...
  10. 计算机怎么剪切音乐然后合在一起,电脑怎么剪辑合并音乐
  11. Node.js及Express的下载、安装和配置教程
  12. centos7zabbix-agen安装
  13. 使用 TiDB 构建实时应用
  14. UE4基础知识总结(一)
  15. SoftICE Window Resizing Commands
  16. 测试学习-测试工具wireshark、HFS、wlan信号
  17. 华师大学 计算机 调剂,2020华南师范大学调剂公告
  18. 今日头条如何快速开通原创
  19. python提取html表格_python html提取表格数据库数据库
  20. 用PGP实现加密和解密全过程

热门文章

  1. 岗位招聘:前后端研发工程师
  2. 2021新乡市铁一中高考成绩查询,新乡铁一中2019年高考一本几人
  3. 微信小程序项目实战篇——基于WYY音乐真实接口开发的音乐小程序
  4. [230533] 托福听力真题|TPO67|精听训练|Lecture3 Art History:New wallpaper designs|15:10~16:10+20:20~21:50
  5. ios 内购正式环境_iOS 内购最新讲解
  6. ROS系列——如何在ros多机系统中使用多个Velodyne VLP16
  7. nginx html代码压缩,Nginx优化服务之网页压缩的实现方法
  8. Go协程泄漏和修复方法
  9. 免费的在线流程图绘制工具 --- draw.io
  10. python 拼接数字和字符串_Python字符串拼接(包含字符串拼接数字)