迎来OO的曙光,总结规格的意义——OO第四次博客总结

一切都要结束了,砥砺前行~算法


 

1、测试与正确性论证的效果差别编程

  测试,顾名思义就是咱们暴力用大量数据轰炸编写的程序的过程。平常的OO过程当中,咱们常常互相寻求“测试集”,正是由于测试使用特定数据对咱们的功能进行针对性测试,好处在于能够很直观很明显的找到bug所在,而且复现性也很强。可是偏向于穷举,也就是咱们日常对于本身的数据集太小,而担忧本身有没有彻底覆盖全部的可能,即便本身测试的过程当中没有发现问题,也内心惴惴不安,从而寻求更大测试集。这种方式便于实现与分析,可是不能彻底验证程序正确性。多线程

  测试则须要经过输入特定数据等方式,检查程序是否和预期相同,由于测试不可能穷举,致使了不穷举的测试不可能验证程序是彻底正确的,只能验证程序在测试时没有发生错误,尽管如此,测试依然是一种高效的检查程序的方法,经过输入数据或复现现场,直观的发现代码的问题,进而在代码中找到问题的来源并修正。单元测试


 

2、OCL语言与JSF规格测试

  对象约束语言(Object Constraint Language),简称OCL,是一种指示用户建模系统中的限制方式。它是UML可选的附加内容,能够用来更好地定义对象的行为,并为任何类元指定约束。在对象约束语言中,对象表明了系统的组件,它定义了完善的项目,约束表明限制,而语言并不是是指一种正式的计算机语言。spa

 

  OCL是一种形式语言,能够应用于任何实现方式的非正规语言。对象约束语言对UML中图形或其余组件都没有控制权,它只是在使用时返回值。OCL并不能修改对象的状态,而是用来指示对状态的修改什么时候发生。OCL表达式以附加在模型元素上的条件和限制来表现对该对象的约束,其中包括附加在模型元素上的不变量或约束的表达式、附加在操做和方法上的前置条件和后置条件等。线程


 

 

3、第十四次做业模型图设计

UML类图 对象

 

UML时序图blog

 

UML顺序图


 

 

4、学期总结

一、四个单元模块知识点之间的关系

  第一单元主要是一些设计思想,类的抽象,属性私有化,接口,继承等等,第二单元是多线程的共享数据管理和冲突解决,只有掌握了第一单元的内容,封装好每一个类,才能实现更好多线程的程序。第三单元是规格化设计。第四单元是单元测试和正确性论证,根据规格对每一个方法进行测试和覆盖率检查,对每一个类进行正确性论证。

二、梳理与进步

①多项式加减

②傻瓜单电梯

③可捎带单电梯

④可捎带多线程电梯

⑤文件变动扫描器

⑥出租车调度

⑦可开关道路的出租车调度

⑧可开关道路和带有红绿灯的出租车调度

⑨可开关道路和带有可追踪出租车和红绿灯的出租车调度

  一个学期的数次编程联系中,提升最大的应该是设计。之前在编写一个程序,看中的是算法,但当程序有了必定规模和屡次的增补,没有一个好的设计极可能致使以后的新功能收到影响,甚至不得不重构。测试的水平却不想设计同样平稳上升,而是先上升后降低,主要缘由在于后期做业的设计占了更多的时间,完成代码后每每已经没有足够的时间进行测试。

三、对工程化开发的理解

  工程化开发,在我看来是在写代码的漫漫长路上转阶段的一步,是从做业到项目的转变,由于做业能够是一我的完成的,你写的逻辑,你测试的方法你本身知道就能够工做,可是项目中,咱们须要考虑到不少事情达成共识,例如变量的命名规则,类的设计,接口的统一,只有明确了这些,才可以保证代码能够互相开发,互相阅读,互相协做,一个明确的规范就是工程化开发的第一要义。

四、指望与建议

  我觉的目前课程挺好的,你们一块儿加油吧~

相关文章
相关标签/搜索