OO规格化编程体验小结 1. JML语言的理论基础、应用工具链情况 1. JML 理论基础: JML建立契约式编程的基础上,是一种实现契约式编程的规格化语言。顾名思义,契约式编程,是供求双方建立在一定的契约上进行软件的开发和应用。类似于在共同完成这一个工程的时候我们对于每个方法都以一个供求双方都统一 ...
分类:
其他好文 时间:
2019-05-21 21:03:45
阅读次数:
158
OO的奇妙冒险3——JML与设计规范 目录 JML理论与工具 验证方法与报告 自动样例及其生成与评判 架构设计与重构 bug 心得体会 JML理论与工具 JML是一种通过形式验证,在实现代码之前就保证所写代码正确性的有效手段 总的来说,JML实现了这样一种功能,即设计与实现分离。构造JML的与写代码 ...
分类:
其他好文 时间:
2019-05-21 19:15:47
阅读次数:
108
一. JML语言 1. 理论基础 首先,JML不是JAVA的一部分,它是一群研究者为JAVA设计的扩展部分,但还没有得到官方的支持。因此,JAVA编译器并不支持JML,所以要想JML起作用,只能采用类似openJML这样的第三方来编译,将JML 规格编译为运行时检查的语句,即RAC code(run ...
分类:
其他好文 时间:
2019-05-21 10:59:21
阅读次数:
91
JML语言理论基础 Java建模语言(Java Modeling Language,JML)是一种进行详细设计的符号语言,他鼓励你用一种全新的方式来看待Java的类和方法。JML是一种行为接口规格语言 (Behavior Interface Speci?cation Language,BISL),基 ...
分类:
其他好文 时间:
2019-05-20 21:10:00
阅读次数:
107
工厂模式以及应用场景 面向对象(Object-Oriented, oo)语言的一个是标志--类的概念 // "use strict"; //6.1理解对象var person = new Object();person.name = 'nick'; person.age = '29';person. ...
分类:
其他好文 时间:
2019-05-19 17:02:01
阅读次数:
327
面向对象:Object Oriented 简称OO 面向对象的学习: 面向对象的语法的学习(简单,靠记忆就可以,比较多) 面对对象的思想的学习(稍微有一点难度,不太适应) 面向对象的优势: 能够实现良好程序结构,方便程序的开发和管理维护! 效率: 运行效率:计算机 面向对象效率不如过程化的快 开发效 ...
分类:
编程语言 时间:
2019-05-12 10:37:23
阅读次数:
95
接口应用之策略模式 策略模式(Strategy Pattern),定义了一系列算法,将每一种算法封装起来并可以相互替换使用,策略模式让算法独立于它的客户应用而独立变化。 OO设计原则 1. 面向接口编程(面向抽象编程) 2. 封装变化 3. 多用组合,少用继承 // 测试类(包含main方法) pu ...
分类:
其他好文 时间:
2019-05-10 23:23:02
阅读次数:
166
观察者模式: 出版者 + 订阅者 = 观察者模式 对象间的一对多依赖: 当一个对象的状态改变时, 它的所有依赖者都会收到通知并更新 主题是真正拥有数据的人, 在数据变化时更新, 比起让许多对象控制同一份数据, 可以得到更干净的oo设计; 设计原则: 交互对象之间的松耦合设计而努力 Java中利用观察 ...
分类:
其他好文 时间:
2019-05-05 01:01:09
阅读次数:
169
最高原则 高内聚 低耦合 正交设计四原则 消除重复 分离关注点 减小不必要的依赖 向着稳定的方向依赖 简单设计原则 简单设计 通过所有测试 尽可能消除重复 尽可能清晰表达 更少代码元素 以上四个原则的重要性依次递减 SOLID 原则 正交设计,OO与SOLID SRP 单一职责原则 每个类都应该只有... ...
分类:
其他好文 时间:
2019-05-04 00:46:07
阅读次数:
233
本文是针对北航OO规格化单元的Maven和Junit简单用法教程,希望能给大家带来更好的项目管理、OpenJML和单元测试体验~ ...
分类:
系统相关 时间:
2019-05-02 23:03:38
阅读次数:
388