补更关于lab3中遇到的问题

之前忙于写实验一直忘记了博客这回事

今天来补一补在lab3中遇到的坑

首先lab3实用性极高,自由度也很高,难度系数也很大。

如果各个设计模式理解不透彻,很难设计出来复用性好的软件。

在state模式上我就栽了不少跟头,由开始的不理解,到后来理清楚计划项各个状态的关系。

用nextstep函数把各个状态串起来比较方便理解。然后在commonPlanningEntry中设置各个计划项的操作,启动结束取消挂起重新启动等操作直接调用state里面的一些函数方法就可以,十分便于理解。

在设计各个应用的时候,一定先要理清楚三个应用有哪些相同的地方,有哪些不同的地方。

我在实验里没有做好的一个地方是,也是做完实验在做new change的时候发现的,我其实可以不要把location分成Airport classroom station三个具体类,然后再设置singleLocation,DoubleLocation,MultiLocation,完全可以只设置一个类,这个类就是MultiLocation,把机场当做list的size为2的MultiLocation,把教室当做list的size为1的MultiLocation,这样既可以简便设计过程,简化调用的过程,还有极高的复用性,在更改机场可以有经停的时候,就不需要把FlightEntry里面的DoubleLocation类再替换为MultiLocation,虽然变化不是很大,也很好更改,但是需要把所有的代码里面的DoubleLocation都改为MultiLocation,相比较只有一个MultiLocation类的工作量还是大了很多的。

另外还有一个点需要注意的是,之前没有学习过正则表达式的处理文本的内容,需要重新学习。

猜你喜欢

转载自www.cnblogs.com/benecho/p/12950499.html