第四单元总结

一、正向建模与开发

正向建模与开发是从需求和模型设计到具体代码实现的一种开发方法,其主要步骤有需求分析,建立模型,具体实现等。本单元要求设计一个图书馆管理系统,在阅读并分析完需求后,我首先绘制UML类图,定义系统中应该存在的类以及类的属性、方法、类之间的关系等,这是正向建模的过程。在开发中,按照已经绘制的UML类图进行代码编写,主要精力会放在方法的具体实现上。在代码开发中,有时会发现UML类图上所绘制的方法并不完整或者有所缺陷,这时需要在更改代码的同时对UML类图进行相应的修改。UML顺序图和UML状态图同理。

正向建模与开发的方式确实对代码的编写与检查起到了非常重要的作用。在梳理需求进行建模的过程不断加深对系统的理解,便于开发中代码的编写以及测试,能够提高开发的效率以及稳定性。

二、架构设计

  1. 第一次作业

本次作业需要实现借阅,预约,取书,还书以及查询几个功能。图书馆中拥有书架、借还处以及预约处。

2.第二次作业

第二次作业增加了赠与和漂流处系统,整体架构没有太大变化。

3.第三次作业

第三次作业只增加了信用分系统,重点修改了Student类,整体类架构没有改变。

最终的代码设计首先是基于初次UML模型设计建立的,在开发过程中会发现初步设计的UML模型的缺陷,于是代码设计方面需要进行改动,同时UML模型也要做出相应改动,二者之间是互相修改的关系。

三、架构设计思维

第一单元

第一单元是多项式化简,重点为层次化设计思维。使用递归下降法建立起代码的整体框架,将表达式建模为不同层次进而进行开发。

第二单元

第二单元为电梯系统,重点在于同步以及多线程的设计思维。在多线程以及同步问题中,如何正确地利用多线程实现相应的同步功能,以及如何预防和处理死锁是值得思考并且难以解决的问题。这个单元的设计主要围绕着锁来进行。

第三单元

第三单元为JML,重点在于规格化设计思维。通过JML这一建模语言,对方法的实现进行前置后置等条件的规范,便于编写正确的代码以及编写全面的测试。这种规格化设计在一些重要的代码场合能够十分有效地避免代码漏洞的产生。

第四单元

第四单元为UML,重点在于模型化设计思维。通过正向建模与开发增加开发的效率以及稳定性,通过UML的不同图表可视化地体现代码的结构以及交互过程。

四、测试思维

第一单元:输入形式简单,只需要人工测试,注意边界条件

第二单元:多线程运行结果不同,需要进行多次测试才能够确保正确

第三单元:可以根据JML的规格来编写测试,这样的测试编写便捷,实现简单并且能够得到全面有效的测试

第四单元:在代码测试之外,还可以根据代码与UML的对照进行检测

五、课程收获

在经过四个单元的磨练后,我从一个不太熟悉面向对象编程的新手成长为了一个能够使用层次化设计思维,多线程设计思维,规格化设计思维以及建模化设计思维的程序员。我在本课程中掌握了多线程的部分编写技巧,能够阅读并编写JML以及对需求进行UML不同图表的建模。这门课程在间接培养了我编写代码能力的同时,主要还是培养了我面向对象编程思维,能够运用多种方法来解决现实生活中的编程问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值