北航oo第三单元总结 基于JML设计总结 JML主要由方法规格和类型规格组成。 方法规格包括前置条件、后置条件和副作用范围的限定。前置条件可以用来区分该方法不同的行为(正常或异常),后置条件就是这个方法执行完后的结果,副作用范围限定规定了这个方法运行的过程中哪些元素可以被改变。 类型规格分为不变式和 ...
分类:
其他好文 时间:
2021-06-02 15:13:27
阅读次数:
0
BUAA UNIT3 社交关系模拟系统 一. 总结实现自己实现规格所采取的设计策略 ? 在实现JML规格时,采取的策略为先大致读一遍JML规格,理解将要实现的类成员变量与方法的大致意义,之后去设计将要实现的类中的数据结构与算法,然后开始下手写代码。值得注意的是,这仅仅是第一步要进行的工作。 ? 在之 ...
分类:
其他好文 时间:
2021-06-02 15:12:46
阅读次数:
0
本单元是基于JML规格来实现对社交关系的模拟和查询,整体架构与设计都是官方给出。在实现过程中,我深感JML是一个非常适合开发的形式化规格语言。尤其对于团队项目的开发,用JML可以清晰规定每一部分的代码要求,程序员在实现时仅需思考在此基础上如何提升性能,而不用为架构设计发愁,体验极佳。 设计策略 由于 ...
分类:
其他好文 时间:
2021-06-02 15:07:31
阅读次数:
0
USB2.0IP设计 最近,在学习USB2.0IP的设计,其中包含了CRC校验码的内容,之前学习千兆以太网曾经用到过CRC32校验(https://www.cnblogs.com/Xwangzi66/p/14185143.html),CRC详细原理可见括号的链接,今天则从怎么用工具快速生成Veril ...
分类:
其他好文 时间:
2021-06-02 15:06:59
阅读次数:
0
前言 ELF格式的.gnu.hash节在设计上比较复杂,直接从glibc源码进行分析的难度也比较大。今天静下心来看了这篇精彩的文章,终于将布隆滤波器、算数运算转为位运算等一系列细节搞懂了(值得一提的是,这篇博客十分值得花一些时间读懂,它不仅对总体有一个较好的描述,而且还涉及了许多有益的实现细节)。但 ...
分类:
其他好文 时间:
2021-06-02 15:06:42
阅读次数:
0
虚拟机栈 简介 虚拟机栈的出现背景 由于跨平台性的设计,Java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的【如果设计成基于寄存器的,耦合度高,性能会有所提升,因为可以对具体的CPU架构进行优化,但是跨平台性大大降低】。 优点是跨平台,指令集小,编译器容易实现,缺点是 ...
分类:
其他好文 时间:
2021-06-02 15:01:36
阅读次数:
0
软件工程课程的课程实践项目之一,总的来说是毫无实用性的玩具程序。 不过在编写的过程中较为有意识的使用了软件工程方面的知识(起码将程序分为了三个模块,并且努力的降低了耦合性。。。) 站在本人的角度上来讲,是对软件工程的一次实践,美中不足的地方在于没有事先编写需求说明文档、设计用例,并使用UML云云。 ...
分类:
其他好文 时间:
2021-06-02 14:58:19
阅读次数:
0
关键活动 假定一个工程项目由一组子任务构成,子任务之间有的可以并行执行,有的必须在完成了其它一些子任务后才能执行。“任务调度”包括一组子任务、以及每个子任务可以执行所依赖的子任务集。 比如完成一个专业的所有课程学习和毕业设计可以看成一个本科生要完成的一项工程,各门课程可以看成是子任务。有些课程可以同 ...
分类:
其他好文 时间:
2021-06-02 14:50:26
阅读次数:
0
//1. ES5 闭包实现单例模式 let singleton = (function(){ let instance = null; return function(name){ this.name = name; instance = instance? instance : this; ret ...
分类:
编程语言 时间:
2021-06-02 14:36:57
阅读次数:
0