zoukankan      html  css  js  c++  java
  • oo第四次博客总结

    1.论述测试与正确性论证的效果差异,比较其优缺点

      测试:通过大量测试样例覆盖测试代码,来检测代码功能的实现是否确是否完善。测试一个程序的正常输入比较容易,但难点就在于大量的非法输入,测试只能发现bug,却不能保证程序正确。正确性论证:通过对代码规格和逻辑的严密分析,推论和证明,来验证代码实现的正确性。所以如果分析论证正确的话,就能保证程序的正确性,但由于正确性论证是形式论证和自然语言层次逻辑的结合,而自然语言的正确性也难以保证,这就导致正确性论证也会出现错误,而无法保证程序正确性。所以在工程中,这两者通常是结合使用的。

    2.调研OCL语言,并比较其与课程所介绍的JSF规格之间的相似和不同之处

      OCL(object constraint language)是对象约束语言,它是一种用于施加在指定的模型元素上约束的语言。OCL表达式以附加在模型元素上的条件和限制来表现对该对象的约束,其中包括附加在模型元素上的不变量或约束的表达式,附加在操作和方法上的前置条件和后置条件等。

      OCL具有如下特点: 

          1、OCL是一种精确的,无二义性的语言 

          2、OCL是一种规范说明性语言,所有有关实现的问题都不能用OCL来表达

        3、OCL是一种纯表达式语言,它是具有没有任何副作用的申明性语言。     

        4、OCL是一种类型化语言,即OCL中的每一个表达式都是具有类型的。

        5、OCL不是一种程序设计语言,不能用OCL编写程序逻辑和控制流程。

      相同点:都是形式化的约束语言,在程序中进行无二义的逻辑约束。都有同样的前置条件,后置条件和不变式。

      不同点:约束的时间不同:OCL主要是在写程序前理论建模的时候,对每个类进行约束,JSF则主要在代码功能实现前,对每个类进行约束。表达的不同:JSF主要使用逻辑表达式,自然语言使用的少。OCL的表达式和数据都有基本类型。

    3.根据第十四次作业的单电梯系统,针对调度器、电梯、请求队列和 请求,至少整理出 一幅UML类图、一幅顺序图和一幅状态图,并使用 图(graph)来表示出模型

      第十四次作业没有提交,所以不做整理。

    4.整理总结一个学期所学所练

      4.1阐述四个单元模块知识点之间的关系

              第一单元 Java和面向对象基本概念入门

              第二单元 多线程程序设计入门

              第三单元 规格化设计

              第四单元 测试与论证

      4.2梳理自己所设计实现的程序,分析自己在设计、测试和质量上的进步

        可能最大的进步便是弄明白了多线程,以及了解到了一个好的代码风格和代码注释有多么重要吧,如果一个代码只是一次作业,我可能就不会很重视代码风格,但如果一个程序需要很多次完善与维护,那么代码风格以及注释就很有必要了,因为你可能需要几星        期后还是能一眼看懂自己的代码,以及修改过代码后会产生什么样的问题。

      4.3阐述自己对工程化开发的理解

              规格化设计很重要,一个方法或者一个类,如果你能确保其正确,那么在维护以及修改代码时将轻松很多。此外在多人的工程式开发中,每个人相互协调也会因为这种规格化而轻松许多。

      4.4对课程的任何期望或建议

           我觉得课程挺好的,就是有点累。

  • 相关阅读:
    输入函数
    pe结构讲解
    pe结构讲解
    小甲鱼pe结构讲解
    pe结构讲解
    pe结构讲解
    YUI3学习笔记 ( 7 )
    [转载 css]用CSS调整scrollbar(滚动条)的配色
    [转载 js]一次性解决png在i6下的透明问题(包括做为img和背景的两种情况)
    YUI3学习笔记 ( 7 )
  • 原文地址:https://www.cnblogs.com/xie8/p/9225381.html
Copyright © 2011-2022 走看看