自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 Lab 5 心得

Static Program Analysis 人工代码走查(walkthrough) 使用oracle规范,并作出如下修改: 1.某些if后单条语句也加了大括号 变化为 2.调整了部分缩进 变化为 3.删除了部分没有用的注释,大多是在开发过程中形成的 4.在某些函数前面添加了@override标识 使用CheckStyle和SpotBugs进行静态代码分析 通过check style的检查结果:...

2019-06-23 23:11:21 121

原创 Lab 4心得

实验目标概述 本次实验重点训练学生面向健壮性和正确性的编程技能,利用错误和异常处理、断言与防御式编程技术、日志/断点等调试技术、黑盒测试编程技术,使程序可在不同的健壮性/正确性需求下能恰当的处理各种例外与错误情况,在出错后可优雅的退出或继续执行,发现错误之后可有效的定位错误并做出修改。 实验针对Lab 3中写好的ADT代码和基于该ADT的三个应用的代码,使用以下技术进行改造,提高其健壮性和正确性:...

2019-06-23 23:08:21 257

原创 Lab 3心得

1.⽬目标概述 根据实验⼿册简要撰写。 2.实验环境配置 简要陈述你配置本次实验所需环境的过程,必要时可以给出屏幕截图。 特别是要记录配置过程中遇到的问题和困难,以及如何解决的。 在这⾥给出你的GitHub Lab3仓库的URL地址(Lab3-学号)。 https://github.com/ComputerScienceHIT/Lab3-1170300623.git 3.实验过程 请仔细对照实验⼿...

2019-06-23 23:07:41 124

原创 4.20软件构造心得

重新思考Lab2中的问题:⾯向ADT的编程和直接⾯向应⽤场景编程,你 体会到⼆者有何差异?本实验设计的ADT在五个不同的应⽤场景下使 ⽤,你是否体会到复⽤的好处? ADT会先从⼤局考虑,先将框架定好 (2) 重新思考Lab2中的问题:为ADT撰写复杂的specification, invariants, RI, AF,时刻注意ADT是否有rep exposure,这些⼯作的意义是什么?你是 否愿意...

2019-06-23 23:06:31 99

原创 5.30软件构造心得

健壮性和正确性,二者对编程中程序员的思路有什么不同的影响? 当程序需要较强的健壮性时,应当尽量避免程序的意外退出,即使用户输入了不合法的数据,也应当尽力进行纠正;而当程序需要较高的正确性时,应当严格对输入的数据格式进行检查,从不接受不合法的数据。 为了应对1%可能出现的错误或异常,需要增加很多行的代码,这是否划算?(考虑这个反例:民航飞机上为何不安装降落伞?) 一般情况下是划算的。但是如果对程序的...

2019-06-23 22:57:49 114

原创 5.20软件构造心得

代码“看起来很美”和“运行起来很美”,二者之间有何必然的联系或冲突?哪个比另一个更重要些吗?在有限的编程时间里,你更倾向于把精力放在哪个上? 二者的相关性不强。即看起来很美的代码运行起来效果不一定好,同理,运行效率高的代码不一定有良好的代码风格。一般情况下运行起来美是更加重要的。我将更着重于代码运行起来美的方面。 诸如SpotBugs和CheckStyle这样的代码静态分析工具,会提示你的代码里有...

2019-06-23 22:55:51 122 1

原创 6.5软件构造课程心得

6.1.实验过程中收获的经验和教训 在本次实验中,我学会了了多线程编程的基本⽅方法。因为多线程之间需要紧密配合,并需 要访问共同的资源,因此难度也⽐比传统的编程⾼高很多,尤其是调试困难。多线程编程需要 更更强的分析能⼒力力,以及调试程序的技巧,并且要适应多线程的思维⽅方式。 6.2.针对以下⽅⾯的感受 (1) 多线程程序⽐单线程程序复杂在哪⾥?你是否能体验到多线程程序在性 能⽅⾯的改善? 多线程需...

2019-06-23 22:50:00 90

原创 3.30软件构造课程心得

面向ADT的编程和直接面向应用场景编程,你体会到二者有何差异? 基于对象,就是使用类封装操作和操作依赖的数据。用类来表示一个概念。类的公共成员,包括函数和数据,就是类的接口,也叫作抽象数据类型(ADT)。   面向对象,就是使用类的接口实现机制来表示操作。一个接口使用一组相关的公共函数代表一个概念的操作。一些类实现这个接口。这个实现类可以互换。 使用泛型和不使用泛型的编程,对你来说有何差...

2019-06-23 22:49:13 94

原创 Lab 2实验报告

Lab 2实验报告 Lab 2实验报告 实验目标概述 本次实验训练抽象数据类型(ADT)的设计、规约、测试,并使用面向对象 编程(OOP)技术实现 ADT。具体来说: 针对给定的应用问题,从问题描述中识别所需的 ADT; 设计 ADT 规约(pre-condition、post-condition)并评估规约的质量; 根据 ADT 的规约设计测试用例; ADT 的泛型化; 根据规约设计 ADT 的...

2019-06-23 22:47:24 183

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除