OO第四阶段总结

 

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

1、 测试的结果一定是正确的,因为测试是在寻找确切的与预期不符的程序运行结果。而正确性论证的效果取决于正确性论证的质量。

2、 相比测试正确性论证要更加全面,测试如果不遵从条理的测试逻辑的话可能会陷入片面,而正确性论证对于程序运行的各个分支各个走向都会加以考虑。

二、OCL语言与JSF规格的比

OCL语言和JSF都是对于程序设计的约束,但OCL为了能够更方便,更广泛地被应用,所以并没有采取纯粹二阶逻辑的符号语言,而是提供了一种介于自然语言和逻辑语言之间的新的表达方法。JSF在表述上完全采用二阶逻辑来表达,保证了JSF的无歧义性,但是会给编写者以及阅读者带来障碍。

相同点在于它们采用了前置条件,后置条件和监护规则的模式,不同点在于OCL有着丰富性和完备的可计算性,允许自然语言的表述。

三、单电梯系统结构梳理

1、 uml类图

2、顺序图

3、状态转换图

四、总结

1、四个单元代码阶段从最简单的java程序编写开始逐渐引入各种各样的机制与要求,逐渐掌握继承与多态直到多线程程序编写不断丰富面向对象编程知识,在基本掌握技能后开始面向要求灵活调用程序设计方法,最后对自己的程序进行反思与重构,学习与巩固相衔接的一个过程。

2、在不断的训练之后自己在设计程序时不忙于开始动手写代码,而是开始先分析,构建,再逐步去实现自己的设计。编写的程序比一开始更简洁,并开始考虑程序性能问题。

3、我认为工程化开发是多人协作的产物,多人的一个小组每个人实现自己那部分代码的编写和测试,相互之间的衔接尤为重要。在此程序的规格与接口与程序的相适应十分重要,代码的可读性与可维护性也十分关键,这样才能联结成一个完善可靠的工程。

4、我的建议是尽快设计对互测过程中恶意互测行为的控制甚至是惩罚。课程的难度与作业的量我们都是可以通过自己努力牺牲自己的时间来跟上的,但是恶意互测这种行为不应该是学生该考虑的,更不是课程组可以放任甚至标榜为本课程特点的。我认为这样的行为的出现不是课程设计的初衷,如果这样的行为不断泛滥会打击同学们的积极性并且将这门课中的核心竞争引到不应该的地方,实际上已经是这样了。

posted on 2018-06-25 16:08  平源  阅读(114)  评论(0)    收藏  举报