- 博客(4)
- 收藏
- 关注
原创 软件构造ADT复习
AF: 从抽象空间到现实空间的映射,满射但不一定是单射。 RI: 表示独立性,可以理解为rep需要满足的条件,即某个具体的“表示”是否是“合法的”。 Spec: 说明函数的作用,和限制条件,分为pre-condition和post-condition,前置条件更弱或后置条件更强使spec变得更强 checkRep: 按照写的RI来检查rep是否合法,一般在Creator,producer,mutator后检查。 表示泄露:所有变量都要用private类型,返回值若可能暴露rep,使用防御式拷贝或者c
2021-07-07 23:27:37
187
转载 软件构造设计模式复习
immutable(不可变的):一旦创建,就不能更改它的值/引用。 mutable(可变的):创建之后,该对象拥有可以更改其值/引用的方法,可以利用这些方法改变。 需要注意的一点是: 改变一个变量的引用:将该变量指向另一个值的存储空间 改变一个变量内的值:将该变量当前指向的值的存储空间中写入一个新的值。 ...
2021-07-07 22:29:17
89
原创 HIT 软件构造 lab3 感想与收获
lab3我选择的方案5,写了三个接口及其实现,为三个app委派使用,在这里我发现了委派调用的好处。 首先,更改容易,当发现现有的接口实现不能满足app要求时,可以直接写另一个实现来继承这个接口,在app中,调用时,只需指明调用的是哪一个实现就完成了更改。 第二,一开始我认为如果没有使用委派,顶多就是在app中多复制粘贴几下的问题就是了,后来发现不是这样,这就要涉及到另一个东西泛型L,这是一个抽象的对象,通过它,代码就可以提高复用度。举个例子: @Over...
2021-07-06 16:02:13
119
原创 软件构造1,3章复习
软件构造真的是和之前学的编程类的课程完全不一样的课,这门课的实验给我影响颇深,我之前写代码虽然码量可能有很多,但是没有写过某个单一项目代码量如此大的东西,尤其是lab3。 写软件构造实验要对整体有一个很好的把握,在设计时出现一点小问题,后期调试的时候就会付出巨大的精力来修改这一问题。test对我是很大的一个启迪,我之前写代码的时候,一般是先全部写完,写完之后先对照例子查看输出时候有误,再自己编几组数据对整体代码进行测试,而且我也经常很多代码都堆到main函数中,虽然对于结构...
2021-07-06 14:49:51
137
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅