OO Unit4 及全课程总结

蒋槟阳-22373437 学生 2024-06-17 17:00:52

本单元的正向建模与开发

本单元采用了正向建模的方式,即阅读指导书后整理要求后,根据需求正向设计,画出 UML 图,再根据 UML图开发实现设计。

本单元作业的框架

下图为本单元最后的 UML类图

img

使用了 Library 类来维护整个 Library 的所有东西。
对于每一个书可能存放的位置都设置了一个类,并设置方法对其进行维护和交互。
使用了 Arranger 类来管理 open 和 close 时的调度,AppointmentManager 类来维护所有的预约操作。
个人认为这样的架构很好的满足了面向对象的性质,并有很好的扩展性

四个单元中设计思维的演进

第一单元

第一单元中使用的递归下降法,对各部分进行成不同对象的方法让我对面向对象的设计思维有了初步的理解

第二单元

第二单元中对多线程电梯的设计中,用策略对象来维护策略,使用对象做虚拟的策略而非实际的某一个物品强化了我的设计思维

第三单元

第三单元中是根据 JML 对代码进行实现,无须自己设计,但是让我认识到了提前做好充分设计之后对实现的方便之处

第四单元

第四单元完全由自己设计,我结合了在前几个单元的学到的,提前进行了充分设计,对不同实物对象和策略对象进行了划分,得到了较好的架构

测试思维的演进

在整个流程中,测试从一开始的简单手搓样例,到后面使用极限的大数据和有针对性的数据进行测试,采用的测试的强度变高了。但是从结果而言效果没有很明显,还需要再加强对测试的思维的锻炼

课程收获

首先在课程中使用 JAVA 完成任务,让我对 JAVA 的使用熟练程度有了一定了解。其次在第二单元的多线程电梯任务里,这个完全未涉及的领域对我的启发很大,多线程中需要考虑的线程安全,轮询等问题在难住我的同时也让我锻炼了思维,也对多线程程序有了了解。三四单元让我理解了预先良好的架构设计的威力。最后整个课程中也整体上锻炼了我设计程序的能力,了解到了面向对象的思维,并能在设计程序的过程中使用。

...全文
83 回复 打赏 收藏 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
下载代码方式:https://pan.quark.cn/s/054d920fa1d1 《学生博客信息管理系统详解》 学生博客信息管理系统是一款针对教育环境而设计的简化博客平台,其主要目的在于协助教师进行学生博客信息的监控与管理,并对学生的作业得分进行记录。该系统具备方便的查询和访问特性,能够显著提升教学活动中的信息传递效率,并且为学生构建了一个展示个人能力、交流知识的平台。 1. **系统架构** 学生博客信息管理系统大概采用了常规的三层架构,涵盖了表现层(用户交互界面)、业务逻辑层(负责业务规则的执行)以及数据访问层(负责与数据库进行数据交换)。此类架构有利于代码的规范化管理与维护,有助于提升系统的可扩展性与代码复用率。 2. **功能模块** - **用户管理**:包含注册、登录、个人资料维护等功能,旨在保障用户能够安全地使用系统。 - **博客发布**:学生能够建立、修改和移除自己的博客文章,内容形式支持文本、图片、链接等多样化展示。 - **博客查询**:用户可根据关键词、作者等条件进行检索,以快速定位所需的博客内容。 - **作业评分**:教师可以检视学生的作业,实施评分与评语,系统将自动计算每次作业的平均分数与总得分。 - **统计分析**:系统提供数据统计功能,例如学生作业成绩的分布情况、活跃度最高的博主排行等,为教学决策提供数据依据。 3. **技术选型** 从提供的文件"博客管理.jar"可以推断,该系统可能基于Java语言开发,因为.jar是Java程序的可执行文件格式。同时,"博客管理_lib"可能包含了系统运行所需的第三方库资源,这些库资源或许包含了Spring框架、Hibernate用于数据持久化处理,或MyBatis用于数据库交互,...

301

社区成员

发帖
与我相关
我的任务
社区描述
2023年北航面向对象设计与构造
学习 高校
社区管理员
  • YannaZhang
  • CajZella
  • C_ecelia
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧