- 博客(8)
- 收藏
- 关注
原创 软件构造之Snapshot Diagram
快照图(Snapshot diagrams)能代表程序运行时的各种内部状态——它的栈(即方法和局部变量)和它的堆(即现在存在的对象)。具体来讲,使用快照图有以下优点:便于程序员之间的交流 解释一些概念例如原始类型 vs. 对象类型不可更改的值 vs. 不可更改的引用, 指针别名, stack栈 vs. 堆heap, 抽象表达 vs. 具体表达. 便于解释设计思路 为以后的课程做铺垫基本类型的值原始值都是以常量来表达的。箭头的来源可以是一个变量或者一个对象的内部区域(field)对
2021-07-06 20:29:54 239
原创 软件构造之泛型
泛型,这个Java语言的重要特性,在写实验的过程中也是不断地使用。尤其是实验二和实验三,不仅使用了Java自带的泛型类型,甚至还自己编写了泛型。那么什么是泛型呢?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。比如在List<Strin...
2021-07-04 17:48:01 168
原创 软件构造之Java规约(specification)
规约的组成前置条件(precondition):输入满足的条件,在注释中记作requires。后置条件(postcondition):输出满足的条件,在注释中记作effects。例外行为(exceptional behavior):当前置条件不满足时会发生的事件。规约的意义规约描述了方法的行为,即当前置条件被满足时,在方法完成后,后置条件一定被满足;当前置条件不被满足时,后置条件可以不被满足,或称方法的行为是任意的。在Java中,可以在方法注释中通过@param、@return、@t
2021-07-04 16:09:42 704
原创 软件构造之ADT
通过软件构造课,我愈发理解“软件构造”这个词了,尤其是在写实验二时,一步一步来写ADT、写泛型,最后再将ADT使用到具体的应用上。ADT是抽象数据类型,具有很好的复用性,抽象级别越高,复用性越高。在软件开发的时候,使用ADT是非常明智的一种选择,因为这将能大大减少你的工作量。...
2021-07-02 17:26:48 245
原创 使用eclipse时遇到的关于package的小问题
用eclipse写test测试时,test文件夹并没有以package的形式出现在项目结构中,而只是普通的文件夹。显然,我们需要把test文件夹变成package的形式。首先,在你创建的项目名称上,用鼠标右键单击,然后选中Build Path,如下图:点击Configure Build Path...,出现如下的窗口:在Java Build Path这一栏选中Order and Export,将test这一栏前边的方框内打勾即可。...
2021-07-01 14:40:11 662
原创 哈工大CSAPP大作业
计算机系统大作业题 目程序人生-Hello’s P2P 专 业 计算机专业学 号 1190202016班 级1903010学 生 李润哲 指 导 教 师史先骏 计算机科学与技术学院2021年5月摘 要...
2021-06-28 11:49:43 267
原创 软件构造课程感想
软件构造这门课已经上了将近一半了,实验一也几经完成了。这门课和以往的课程是不一样的。软件构造虽然也要写代码,但它注重的不只是代码的功能,还包括代码的质量。
2021-05-30 16:00:33 191 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人