比较测试和正确性论证的效果


第13次作业是针对ALS电梯进行方法规格的测试,来判断方法运行的结果是否符合预期,是一种直观的验证错误的办法,但是不能确保程序完全正确,不过相比平时用的测试方法,这样效率更高更容易找到错误;而第14次作业的正确性论证其实是从理论上证明逻辑的完备性,从而证明程序的正确性,在写论证的过程中会再一次思考规格是不是有漏洞,程序的设计和一直懒得de的bug是什么地方出现了问题。尽管我不认为自己在这两次作业中花了足够的时间深思熟虑了,我的代码还是得到了一些改善。

比较OLC语言和JSF规格


OCL(object constraint language)对象约束语言,作为图形符号的补充,说明建模元素的有关细节,例如约束前置条件、后置条件,是一种形式化的无二义语言。基本要素有:类型、操作、表达式和语句。相比JSF规格,OCL语言更为复杂,因为其定义了数据类型还有运算符和表达式中的一些书写规范,可以称之为是一种编程语言。

可以说,JSF是更自由的OCL,便于书写、更改和阅读。

UML


整理&总结


1. 知识点的关联

如果我说我能找到的关联是这些我都不会,算不算一种微妙的联系?我感觉这四个单元是一个码农的生活缩影,从初学语言到简单的应用,再到结合实际的多线程部分,考虑更多的实际问题和线程安全问题以及最后的应用前的测试和规范书写。难以想象我也硬着头皮坚持下来了,虽说我常把“我与Java的最后几周”挂在嘴边,可还是觉得这个经历很过瘾也很有成就感。

2. 进步

我觉得经过了这个学期,像是扒了几层皮,虽说bug还是让我摸不着头,起码也能自己搞一搞不crash,能解决几个问题。在程序设计上,不像开始的时候很难想到一个思路进行下去,逐渐的可以很快理清关系。测试一直很懒,不过代码思路清楚一些还是会避免错误的发生。

3. 工程化开发

相比于工程化开发,我觉得思考思考如何出道更现实一点(开玩笑)但是不出意外的话,工程化开发跟我没什么关系hhh

4. 建议

希望以后追加什么要求或者修改什么地方能够更新指导书,不过更好的是发布了指导书不要再进行什么修改了,真的会让人不太开心

5. 套路感谢

吴际老师比想象中和蔼可亲一万倍,是个非常善解人意的老师,尽管我ifttt最后还是放弃了,这也让我觉得挺不好意思的,谢谢老师的理解!

还要谢谢助教小姐姐,每次我千奇百怪的问题她都很及时的回答我,当然还有那次提交不上去与死(马)神助教对话,很感谢你们的帮助!

emmm还有被我骚扰的大佬们,深夜分享思路的sz大帝,覆盖性测试救我一命的先哥,还有个很皮的小弟(作用十分微小)和收拾烂摊子还要哄我的pq学长~

最后嘛还要谢谢好几次哭着说不写了最后还是坚持下来的自己(卖个萌)以后也要加油

ps. 难以想象这竟然是我为了OO熬得最晚的一次

第四次OO总结的更多相关文章

  1. 第四次oo博客作业

    (1)本单元是撰写UML数据分析器,架构大致如下,在指导书要求的函数外,对于UmlClass类,Umlinterface类,以及状态机,顺序图这四个类重现构造一个类,这个类里有他们所需要的全部信息,另 ...

  2. 第四次oo博客

    论述测试与正确性论证的效果差异 单元测试利用测试者构造的测试用例来检查类或方法的正确性,一般来说所需要测试的用例是无穷多的,通过人为构造代表性的测试用例来尽量测试所有代码.测试的优点在于不易出错,只要 ...

  3. 北航oo作业第四单元小结

    1.总结本单元两次作业的架构设计 在我动手开始总结我的设计之前,我看了其他同学已经提交在班级群里的博客,不禁汗颜,我是真的偷懒.其他同学大多使用了新建一个类,用以储存每一个UMLelemet元素的具体 ...

  4. OO第四单元作业总结及课程总结

    一.本单元作业架构设计 1.第一次作业 本单元首次接触到UML以及相关概念,在面对第一次作业时首先花了很大功夫去阅读官方接口中各种UmlElement的代码,才理解了输入的模型元素中各属性的含义.总的 ...

  5. OO设计原则 -- OO设计的原则及设计过程的全面总结

    这部分增加一点自己的感想,OO设计原则下面讲述的很清晰;看完之后有点感想如果我们在实际开发当中能够把这些原则熟烂于心的话那我们的代码质量和个人能力会有很显著的提神.根据自己的实际经验看很多开发者在开发 ...

  6. BUAAOO-Second-Summary

    #目录 homework & class & trainning : 两次上机.三次作业.四周课堂 code analysis & review : 为什么我没有bug,为什么 ...

  7. BUAAOO-First-Summary

    目录 homework & class & trainning : 两次上机.三次作业.四周课堂 code analysis & review : 为什么我没有bug 黑盒测试 ...

  8. java----OO的概念和设计原则(转)

    一.OO(面向对象)的设计基础 面向对象(OO):就是基于对象概念,以对象为中心,以类和继承为构造机制,充分利用接口和多态提供灵活性, 来认识.理解.刻划客观世界和设计.构建相应的软件系统.面向对象的 ...

  9. 【JavaScript】彻底明白this在函数中的指向

    一.this,其实可以类比成人 说到this的话,我们在js中主要研究的都是函数中的this,在javascript中,this代表当前行为的执行主体,而context代表的是当前行为执行的的环境(区 ...

随机推荐

  1. springboot使用内部tomcat启动和外部tomcat启动的区别

    springboot本身提供了内部tomcat,可以使用main方法直接启动即可,此时在访问项目请求时,不需要加上项目名称.例如:http://localhost:8088/user/ 如果使用外部t ...

  2. java方法体

    执行顺序: 静态代码块 mian方法 构造代码块 构造方法 静态代码块只执行一次.

  3. DOM对象与jquery对象相互转换

  4. python待学习内容

    1.Python中不尽如人意的断言Assertion https://www.cnblogs.com/cicaday/p/python-assert.html 2.Python中的反转字符串问题 ht ...

  5. html注册栏网页练习代码

    html body>     <form action="#" method="get">         <div>       ...

  6. 教师派day1

    终于决定好要冲刺了. 昨天开了一个短会,又详细分配了一下任务. 问题是:我的android装了好久好久才可以用~ 今天要把android里的各个文件.控件搞清楚.

  7. 虚拟机JVM

    虚拟机组成:类加载器,运行时数据区,执行引擎 运行时数据区:堆,栈,方法区,程序计数器,本地方法栈 堆:对象实例 栈:入栈出栈,线程的执行 栈帧:一个方法一个 栈的结构:放 局部变量表,操作数栈,动态 ...

  8. maven工程 添加本地jar依赖

    和第三方平台对接的时候要用到对方提供的一个jar包,jar包怎么直接添加到pom文件的依赖中呢? jar包一般都是公共的,要上传到私服仓库.我们都是直接登录私服,操作仓库. 登录私服可以在项目的pom ...

  9. select2的设置选中

    select2插件设置选中值并显示的问题 在select2中,要想设置指定值为选中状态并显示: $("#select2_Id").val("XXXXX").se ...

  10. redis缓存与数据库一致性问题

    一般来说,如果允许缓存可以稍微的跟数据库偶尔有不一致的情况,也就是说如果你的系统不是严格要求 “缓存+数据库” 必须保持一致性的话,最好不要做这个方案,即:读请求和写请求串行化,串到一个内存队列里去. ...