第一章
软件构造的多维度试图
软件配置管理SCM和版本控制系统VCS
第二章
不同软件开发过程对比
敏捷开发PK传统开发
测试驱动开发
第三章
3.1
最重要 immutable和mutable
会画snapshot图
final 对于对象和对于基本数据类型限定的结果不一样
防御式拷贝
3.2
操作规约,前置条件/后置条件
能否用一个操作替换另一个操作
3.3
ADT抽象数据型
1,操作的四种类型
creators producers observers mutators
前三种两种都行
2,表示独立性表示泄露
用户只关心怎么操作,和存储无关
3,Rep
使用什么数据结构进行存储
4,AF
一个映射,拿到数据解释为用户想要的数据
5,RI
一个标准,用以判断数据是否合法的
3.4
继承,多态 ,泛型
3.5
equal判相等(=首地址是否一样)
equals重写
hashcode与equals中的联系
第四章
对3-4进行
4.1
白盒框架黑盒框架
SOLID子类型替换父类型
LSP,父类不抛出异常,子类绝对不能抛出
CRP原则
泛型的子类型化
第五六章可维护性
SOLID各种原则,开辟原则
设计模式
写设计模式
语法正则表达式
error/runtime异常
checked异常
断言与异常
黑盒测试用例的设计,等价类划分边界值分析
第七章
进程与线程
进程与线程的启动runnable
时间分片、交错执行、竞争条件
线程的休眠、中断
线程安全threadsafe的四种策略 – Confinement、Immutability、ThreadSafe类型
– Synchronization/Lock