北航OO课程第四单元总结

北航OO课程第四单元总结

本单元建模与开发

这个单元是实现一个图书管理系统,本身其实代码没什么难度,课程组也没有设计一些极端数据,同时输入输出接口也简化了工作。重点是UML建模,在建模中理解开发与建模的关系。

在本单元的作业中,我确实先尝试着用uml建模,但可能是第一次,感觉没有直接编程来的顺手。即使好不容易憋出来几个模型,在后边也改了。因为我编程的习惯是先建好类和容器,再根据具体的操作来修改容器和类,这也导致了我先使用uml感到很不顺手。在后两次迭代中,我也是调整了写uml的方法,果然好了很多。

那接下来就看看我这单元的具体设计吧。

本单元架构设计

在这里插入图片描述
在这里插入图片描述

我这单元可以看到架构很简单。因为课程组说没有什么性能要求,所以我也就没太在意算法的问题,一些查询都是采用的遍历的方法。

其中我将各种操作都放到了Main中的静态方法里,然后将借还处,预约处和书架各自作为一个类,最后将个人信息作为一个类,然后用容器存起来以供访问。大致就是这么一个结构。

追踪关系

我对追踪关系的理解是最终代码与UML模型设计之间的关联和一致性。那如果是从结果来看,我的类图和代码是100%相同的,因为我最后将uml改成代码的样子了。但是从过程来看,我的关系可能不大,因为在我设计的过程中,uml的设计比较粗糙,我的代码在写的过程中总是有一些新的想法,最后可能就与最初的uml很不一样了。

架构设计思维的演进

纵观我四个单元的学习过程,我认为我的架构设计思维还是有很大进步的。从最初的走一步看一步,到后来的在写作业之前就能有比较清晰的思路。我在完成作业的过程中,越来越重视程序的可拓展性和可读性。这其实是被课程组迭代要求逼出来的,不然隔了一段时间,我自己都看不懂我的代码了。Anyway,结果是好的,我的设计思维进步很大。

测试思维的演进

额,是实话,我的测试大部分依赖评测机(流汗),但是我觉得在找BUG的方面我还是有了一点心得的。从测试数据中发现错误,然后首先通过错误信息大致判断出错误的范围。有的比较简单的,比如最后一次作业,基本上可以直接看出来哪有问题。有的困难的比如第二单元多线程,可能就要借助一些比如添加输出,特定断点,简化数据等方法来锁定错误。

课程收获

可以这么说,OO课是我来北航上的体验最好的一门课。这门课确实让我的代码能力有了很大提升,课程安排虽然备受吐槽,但是不可否认的是它是合理且有效果的。比起其他课上课考试的模式,这样的平时有很大功夫的课让我真正有成长的感觉。不仅仅是架构思维和代码能力,同时也让我收获了慢慢学习一项东西的快乐。最后,感谢老师和课程组的贡献,祝OO课程越来越好。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值