BUAA-OO-第四单元博客

杨辛晨-21373366 杨辛晨-21373366 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

本单元所实践的正向建模

本单元要求我们实现校际图书借阅系统,锻炼同学们对程序架构的设计和抽象能力,以及加强对 UML 图的绘制训练。

本单元实践的正向建模与开发顺序为:先建立UML类图然后根据类图实现代码。
在本单元三次作业的设计中,我基本是先通过数据确定类,再确定了类之间大致的交互关系,然后通过代码实现后再完善类图。后面两次迭代则是在前一次类图的基础上进行补充,最后实现代码。然后功能测试通过后完成课程组要求的状态图与顺序图。

总结本单元作业的架构设计,并对比分析最终的代码设计和UML模型设计之间的追踪关系

本单元的类图架构为下图所示:

hw13

img

实现了Library类控制图书借阅,Book存储图书信息,并根据题目描述功能设置相应的特殊的管理员,都继承父类Librarian。

hw14

img

新增了MyControl类控制校际借阅,将上次作业中Library部分功能抽象至MyControl类。

hw15

img

与hw14相比,只修改了容器的属性,并增加了Record类,用于作为借书的时间记录。

最终的代码设计均与UML类图模型一致。

总结自己在四个单元中架构设计思维的演进

在第一单元和第二单元中,虽然用心打磨了架构,但是在第二次作业中都经历了重构,一是对可能的迭代方向没有大致的把握,二则是代码的可拓展性还有待提高。

在第三单元jml中基本上就是根据规格实现代码,没有考虑架构。

幸运的是,在第四单元没有经历重构,一气呵成地完成了三次作业。

总结自己在四个单元中测试思维的演进

在第一单元中第1,3次作业看yjkgg的博客自己尝试写了测评机,并得到了不错的成绩。第2次作业的时候懒了没测,通过中测了就以为没啥问题了,结果中测没过。

第二单元难度较大,除了最后一次作业以外,过了中测就没进行测试,最后分数也不是很高。

第三单元开始洗心革面,写了测评机(第三单元的测试逻辑相对更简单),进行了大量的黑盒测试。

第四单元前两次作业用了课程群中同学分享的测试点进行黑盒测试,第三次作业因为改动较小,就没多做测试。

总结自己的课程收获

总的来说,这学期OO的体验是比较两极分化的。前半个学期(包括上学期先导课)中个人体验是比较好的,每次作业都能学到新的知识(递归下降法、架构的设计、多线程程序设计......),即使面对很难的任务,也能在指导书和理论课的引导下通过搜索引擎找到解决方法(这一点在先导课和多线程单元感受很深);同时感觉课程时间安排张弛有度,在督促我学习知识的同时也给予了很大的自由空间。完成任务不仅给我带来了面向对象知识上的收获,更提高了我面对复杂项目时化繁为简的抽象能力和对自己编写代码的测试能力,同时也磨练了面对ddl时的意志。

但是后半学期的学习中,在被大多数同学吐槽的jml和uml中个人体验有所下降。u3中拘泥于“规格与实现分离”,为实现同学之间的区分度导致算法的难度大大增加,与之匹配的是题目数据量与时间复杂度的限制并不严格,虽然最后一次作业中顺利通过了强测,但在截止日前确实对“最小环”有较多的考虑。同时u3的实验任务量大,上机时间短,很难完成任务;u4中指导书题面的表述零碎,模糊且有误导性,带来了痛苦的体验。

时光飞逝,我仿佛还记得大二上的自己虽然没抢到cpp还是跟着做先导课作业的样子,一转眼之间oo却已经结课了。总的来说,oo的体验是痛并快乐着的,在未来相当长的一段时间里,我都会回想起自己绞尽脑汁完成oo作业,debug的样子。

...全文

相关推荐

电梯调度java程序 buaa oo课程

电梯调度在计算机科学中是一个经典的实时系统问题,特别是在操作系统(OO)课程中常常作为案例来讲解多线程、优先级调度以及并发控制等概念。

j1rufeng

elevator3.zip_java_java编程_北航oo_北航电梯_电梯

北航第三次oo作业,在原来傻瓜电梯的基础上增加捎带功能

邓凌佳

毕设&课设:自动测评 for BUAA Object-Oriented(OO) 北航 面向对象设计与构造 jav.zip

经导师指导并认可通过的大作业设计项目源码,适用人群:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业或毕业设计,作为“参考资料”使用。

Qing_er爱吃山竹

毕设&课设:2017级北航计算机学院面向对象设计与构造作业.zip

具体到本压缩包中的文件“timdyh-BUAA-OO-2019-af3a66b”,尽管没有提供详细的文件内容,但从其命名方式可以推测,它可能是某位学生(名为timdyh)在2019年为北京航空航天大学(

Qing_er爱吃山竹

【Python编程】Python安全编程与常见漏洞防护

内容概要:本文深入剖析Python应用的安全风险与防护策略,重点对比SQL注入、命令注入、反序列化漏洞、路径遍历等常见攻击面的防御方案。文章从输入验证原则出发,详解参数化查询(parameterized query)对SQL注入的防御机制、subprocess模块的shell=True风险与参数列表传递、以及pickle/ast.literal_eval的安全替代方案。通过代码示例展示密码哈希(bcrypt/argon2)的盐值与迭代策略、JWT令牌的签名验证与过期控制、以及CORS跨域配置的白名单限制,同时介绍bandit静态安全扫描的规则配置、OWASP Python安全编码规范、以及依赖漏洞(CVE)的自动化检测(safety/pip-audit),最后给出在Web应用、数据处理、云原生部署等场景下的安全纵深防御体系与最小权限原则实践。 migu.blsxex.hxjlj.org.cn www.huike-auto.com m.huiyimofang.com hx-whg.com www.huaxiazhenhui.com

2601_96960478
评论
收藏 已收藏
分享
返回顶部