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


第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. html5下F11全屏化的几点注意

    1.实现全屏化 var docElm = document.documentElement; //W3C if (docElm.requestFullscreen) { docElm.requestF ...

  2. SpringBoot之SOAP WebService

    SpringBoot的Web Service类型常见有RESTful Web Service和SOAP Web Service两种,RESTful风格的web服务比较常用,但实际工作中仍有部分场景用到 ...

  3. @Transactional 事务说明

    这里面有几点需要大家留意:A. 一个功能是否要事务,必须纳入设计.编码考虑.不能仅仅完成了基本功能就ok.B. 如果加了事务,必须做好开发环境测试(测试环境也尽量触发异常.测试回滚),确保事务生效.C ...

  4. white-space:pre-wrap和word-break:break-all;

    最近碰到了两个css属性,在此记录一下: 1.white-space :nomal规定文本中的文字空格和换行的情况 normal:默认.空白会被浏览器忽略. pre:空白会被浏览器保留.其行为方式类似 ...

  5. .NET Core 跨平台发布Linux和OSX

    跨平台发布 简单新建一个项目. mkdir dotnethello cd dotnethello dotnet new dotnet new之后 修改project.json 如下: { " ...

  6. 【笔记】Python基础二:数据类型之集合,字符串格式化,函数

    一,新类型:集合 集合出现之前 python_l = ['lcg','szw','zjw'] linux_l = ['lcg','szw','sb'] #循环方法求交集 python_and_linu ...

  7. 给统计人讲python(1)模拟城市_数据分析

    为让学校统计学社的同学了解python在数据处理方面的功能,将手游模拟城市的工厂生产进行建模,让同学在建模与处理非结构数据的过程中学习和了解python.将准备的内容放在此让更多需要的人特别是统计人( ...

  8. React Native的学习资源网址

    react官方文档(英文): https://facebook.github.io/react/docs/getting-started.html   react中文社区(内部有视频教程等): htt ...

  9. step_by_step_记录deepin下curl安装过程

    记录 deepin 下 curl 安装过程 wget https://curl.haxx.se/download/curl-7.55.1.tar.gz .tar.gz cd curl-/ ./conf ...

  10. oracle优化(一)

    非原创 1. 选用合适的ORACLE优化器 ORACLE的优化器有3种: a. RULE(基于规则)b. COST(基于成本) c. CHOOSE(选择性) 选择缺省的优化器,可以通过对init.or ...