HIT软件构造2020春Lab3-1思路

本文详细阐述了在完成航班、列车、任务等管理系统的代码设计思路。从构建底层代码如TimeSlot和Resource开始,到单个计划项PlanningEntry的设计,再到计划项列表的构建,最后完成APP的开发。涉及时间操作、资源管理、排序方法及数据控制。

在此记录我在编写Lab3代码的思路

本次实验需要我们完成航班管理/列车管理/任务管理/课程管理/活动管理中的三个任务,我的思路如下:

1.先构建底层需要的代码:TimeSlot代码块和Resource代码块。

TimeSlot需要实现对时间的一系列操作,例如:赋值和输出
在这里插入图片描述
对于赋值操作,为了以后APP管理方便,我选择使用String传参。将符合要求的字符串(yyyy-MM-dd hh:mm)参数传入,并通过正则表达式分解赋值。
在这里插入图片描述
对于输出时间的操作,只需要使用String.format()函数即可以规范形式输出。
Resource代码块,需要分别建立三种资源类,对其分别实现。我选择的是124项任务,建立资源如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
对于资源来说,飞机的编号,车厢的编号,教师的身份证号具有唯一性,作为后期对资源进行管理的依据。

2.构建单个计划项:PlanningEntry

在PlanningEntry中,需要实现对三种计划项共同的内容,同时要实现对计划项按照时间升序排序的功能,因此需要完善treeset的compareTo方法使其可以对计划项进行排序。同时,为了三种计划项的私有功能得以完成,需要将权限修饰符改为protected
在这里插入图片描述
在这里插入图片描述
在共有的操作中实现创建计划项、设置/删除位置/时间/资源等功能。最后要在其中添加重写的compareTo功能使其支持Treeset的升序排序
在这里插入图片描述
在每个私有方法中实现其不同的输出功能即可。

3.构建计划项的列表

在单个计划项完成后,开始建立计划项的列表,在更高层次上完成对多计划项的处理功能,需要分别建立类,实现创建,删除等功能
在这里插入图片描述

4.APP构建

在计划项列表完成后,底层代码即构建完成。接下来构建可视化界面。
对三个任务分别建立不同的APP,通过调用在第三步完成的方法实现对数据的控制。我是在输入数据的时候,即在APP中对输入数据进行判定是否符合要求,因此APP的代码量较大。
因为需要判断是否符合要求,我将所有的判断方法归结到Rules类中,全部写为static boolean方法,方便日后进行管理
最后,我们需要将三个APP统一起来,通过一个任务窗口即可调用三种APP,建立AppStart类实现上述功能

这时,代码中应该包含除Factory的剩下所有内容
在这里插入图片描述
具体内容如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
至此,代码框架的思路构建完成

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值