- 博客(7)
- 收藏
- 关注
原创 考前复习12章
临考试前复习一些十二章的细碎的知识点 异常分为checked和unchecked,checked需要try- catch- finally处理,unchecked不需要也不应该 父类未抛出checked异常,子类需要捕获所有checked异常 assert不影响性能 pre condition检查时不符合就抛异常,post condition检查时不符合就用assert 必须在spec里声明方法抛出的checked异常 泛型:List<Integer>不是List<Number
2022-06-14 23:30:25
104
原创 对实验遇到的问题的思考
在写实验三的匿名投票是遇到了一个问题,对于匿名投票无法确定一个人投的票是不是合法的、有没有一人投多票。 开始我的思路是在addvote中增加一个voter的参数,但是实现后就变成了实名投票的实现,与匿名投票的要求是不符的。之后,我改变了检查合法性的思路,只有投票的总数量与投票人数一致,选票中没有非法的选项即为合法投票。这虽然无法确定一个人投了几票,但至少在匿名投票的前提下保证了一定的正确性。而对于是不是有人投了多票的检测,我把它放在了客户端,设置有一个“监督员”保证一个人投票后不能再投票,从而是这个合法性
2022-06-12 20:12:42
138
原创 软件构造笔记
面向复用的软件构造技术 大纲: ▪什么是软件重用? ▪如何衡量“可重用性”? ▪可重用组件的级别和形态 ——源代码级别的复用 ——模块级别的复用:类/抽象类/接口 ——库级别的复用:API/包 ——系统级别的复用:框架 ▪设计可复用的类 ——继承与重写 ——重载 ——参数多态与泛型编程 ——行为子类型和Liskov替换原则(LSP) ——组合与委托 ▪设计可复用库与框架 ——API和库 ——框架 ——Java集合框架(一个例子) program...
2022-06-01 09:30:37
221
原创 2020级计算机系统大作业
计算机系统 大作业 题 目 程序人生-Hello’s P2P 专 业 计算机类 学 号 班 级 学 生 指 导 教 师 计算机科学与技术学院 2022年5月 摘 要 本文在Linux系统下对H......
2022-05-18 23:26:23
388
原创 软件构造-规约、ADT
规约的好处 记录自己的设计决策,供自已或他人阅读。 团队协作中,如果没有规约就无法分派任务,无法写程序;即使写出来,也无法验证对错。 规约作为一种客户端与程序之间的“契约”,可以明确双方的责任。 规约可以隔离变化,无需通知客户端,即不管具体实现如何修改,只要符合规约,客户端就没必要知道修改的具体内容。 达到解耦的目标。 可以利用规约来判定方法的行为等价性。 测试用例可以根据规约来编写。 (方法的)规范和合同 规格(或称为合同) ▪规范是团队合作的关键。没有规范就不可能委派实现方法..
2022-05-09 15:15:03
268
原创 软件构造学习整理1
Moment特定时刻的软件形态Period软件形态随时间的变化 AST (Abstract Syntax Tree)抽象语法树 SCI (Software Configuration Item)配置项 concurrent multithreads并发多线程 内部质量/外部质量 外部质量因素影响用户,内部质量因素影响软件本身和它的开发者 外部质量取决于内部质量 软件的内部属性和外部属性(判断) 外部质量因素 正确性(Correct...
2022-04-25 11:16:46
85
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅