oo第四次总结感悟

 

 

 

一. 单元测试与正确性论证

测试:测试一般分为功能性测试和边界条件测试,功能性测试是为了保证程序能够完成要求的正常功能,边界测试是测试边界条件,一般来说,如果不能正常处理边界条件,程序崩溃也是经常的事情。测试的优点是比较直观,比较清楚的知道测得内容,很直观,效率比较高,缺点是即使所有的测试点都过了,也不能保证程序没有bug,很难覆盖所有情况。

正确性论证:正确性论证是从代码逻辑的角度来论证代码是否有无bug,优点是能够全面覆盖程序正确性,缺点是不够直观,十分繁琐,而且耗时多,个人认为正确性论证的性价比不是很高。。。。

二. OCL

  OCL时对象约束语言(Object Constraint Language)的缩写。为了解决约束表达问题,IBM公司设计了OCL,经过发展,OCL已经为标准化组织OMG所接受,成为UML标准的一部分。OCL语言虽然是一种形式化语言,但是它既具有形式化语言无二义性的特点,又消除了形式化语言的复杂性。它包含的集合类型有Collection, Set, OrderedSet, Bag和Sequence。语言要素包括类型,操作,表达式和语句。

  OCL相比JSF要复杂得多,因为它要保证严格的无二义性并且遵守一些列规范,复杂到几乎是一门编程语言。而我们使用的JSF确实简化的多,也相对容易书写。

三.   UML

四.  学期总结

这学期的学习让我了解了面向对象编程,从最开始的基础知识,到线程协调方面的知识,以及后来的测试以及正确性论证等等。。。

再有这学期的学习让我对程序的规范有了重新的认识,只有把每一部分的程序规范化,这样“拼凑起来”才能够达到预期的效果。

虽然经过了一学期的学习,但感觉自己还不能算真正掌握了面向对象编程,所以在以后的时间里,我还会加强对这方面的理解的。

posted @ 2018-06-25 01:31  韩文然  阅读(108)  评论(0编辑  收藏  举报