一、测试与正确性论证的比较

       测试是通过输入特定数据等方式,检查程序是否和预期相同来衡量程序性能的方法,这是一种高效直观的检查程序是否正确的方法,但是由于测试不可能完全覆盖所有情况,所以测试不可能验证程序是完全正确的。

       正确性论证通过自然语言配合公式来实现的,其能够保证程序的正确性,但却需要耗费许多的时间跟精力。

二、OCL与JSF

      OCL又叫对象约束语言,用于对设计对象进行约束,主要是在UML模型中施加于模型上的约束。是一种精确、无二义性的且规范性、表达化的语言。

      OCL与JSF都是没有二义性的约束性语言。不同点在于在功能实现以及语言上存在差异。

三、UML图

类图:

 时序图:

状态图:

四、总结

       通过这一个学期以来的学习,让我受益匪浅,这门课一开始让我们了解面向对象语言跟非面向对象语言的区别,让我们认识到这跟之前学习过的c言语跟很大的区别,然后由浅入深,学习难度跟代码量也都有了很大的提升,然后就来到了oo的第一个小“高潮”,多辆电梯的运行与调度,然后有迭代器、jUint单元测试、JSF语言等知识的学习,这门课为我构造了一个立体的完整的知识架构,让我能够更好的学习与理解。对于工程化,我认为我们首先要改变的是自己的思维方式,工程代表着的是任务量的增加以及团队合作完成,这就要求我们不仅仅需要自己能看懂自己的代码,还需要其他人能够清楚的明白其功能,这就需要开发者对程序进行规格化描述以及一系列相应的操作。关于课程方面我感觉还挺好,只是希望能够更加完善一下oo指导书,希望oo这门课能够越来越好!

posted on 2018-06-25 19:51  cttcss  阅读(105)  评论(0编辑  收藏  举报