前言
QQ : 958284846
正文
上了一学期的软件构造课,看了chp老师抽了半学期的烟,喝了半学期的茶,就是课程内容一点没学会。
一三讲 没大题 全是选择 大题基本上都在第二部分(确定)
三 四部分主要是测试
预测:会有一道设计模式的大题;
————————-复习———————-
第一章
代码开发阶段 一定考 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%考
给你个情况,判定是否泄露br> 出现了咋办br> 为啥没出现br> 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
两种考法考一个:
- 给你一段话,请给其写出表达式
- 给一个表达式 问你这个表达式描述的是什么
设计模式
给你个需求,问你应该用哪一种设计模式实验
adapter 适配器 接口匹配
装饰器 增加功能 例如stack里push pop太简单了,我想扩充就是装饰
模板 某一些自定义功能可以用户实现,但是父类,大的流程要固定
工厂
visitor:这个要注意 用来干嘛的得知道 对某一个类来扩充的 扩充功能点
功能先不实现,给他放着,之后再扩充(也就是放一个接入点,之后再写代码)
visitor看ppt
第2 12讲
正确性:断言—太简单了没啥说的(注:这句话不是我说的,是当时老师的原话,我全记下来了而已),注意一点:可以关闭 抛出assert error
健壮性:异常
error也可以catch 但是没有意义,那都是程序之外的(内存不足等),不需要捕获,捕获了也没有意义
异常:runtime异常不用捕获
checked异常要捕获 证明程序没错,外部环境(用户)错了
黑盒测试:要考
白盒测试 了解概念就ok
- 测试是一种破坏性的测试(找错误而不是证明正确)
- 无法进行完备的测试
祝大家该过的过,该高分的高分!!!
END
文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91425 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!