20172332 2017-2018-2 《程序设计与数据结构》实验三报告

课程:《程序设计与数据结构》
班级: 1723
姓名: 于欣月
学号:20172332
实验教师:王志强
实验日期:2018年5月28日
必修/选修: 必修

1.实验内容

(1)代码规范。
(2)协同测试。
(3)重构。
(4)密码学应用。

2. 实验过程及结果

前期准备:

  • 1.把结对伙伴拉入自己的项目当中。

  • 2.把结对伙伴的项目克隆在自己的idea中。

过程:

  • 1.代码规范

    • (1)安装alibaba 插件,解决代码中的规范问题。通过在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化。
      由:

变为:

代码规范问题可能包括:注释,作者,括号,命名等问题。
- (2)再研究一下Code菜单,找出一项让自己感觉最好用的功能。
Generate——Alt+Insert:可以直接重构tostring方法还要set、get、构造方法等。

  • 2.下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用例,测试成功后git add .; git commit -m "自己学号 添加内容";git push;提交搭档项目git log的截图,包含上面git commit的信息,并加上自己的学号水印信息。

增加的三个JUnit单元测试用例:

git log的截图:

  • 3.完成重构内容的练习,下载搭档的代码,至少进行三项重构,提交重构后代码的截图,加上自己的学号水印。可以重构程序名,也可以重构变量名、方法名等。


  • 4.密码学应用。
    • (1)凯撒密码。
    • (2)Java对称加密-DES算法。
    • (3)Java非对称加密-RSA算法。(密钥对:公钥和私钥)
    • (4)使用密钥协定创建共享密钥。
    • (5)Java摘要算法- MD5。
      代码截图太多了,详情见

3. 实验过程中遇到的问题和解决过程

  • 问题1:在idea中git log不知道从哪里看。
  • 问题1解决方案:


  • 问题2:代码规范时,加入了作者的注释却依旧有这个

  • 问题2解决方案:这个东西改正也并不会消失,所以不是自己没改对,而是它没更新。

其他(感悟、思考等)

  • 这次的前三个实验都蛮简单的,有难度的地方就是克隆结对伙伴项目后,会有一些问题,git push时如果不注意可能会把结对伙伴的项目弄崩。
  • 第四个实验与密码学紧密相关,代码中的许多类都没见过,在学习的时候就在不停的查API文档,慢慢的学习之后,感觉自己摸着了一点门路。不过往后的共享密钥就感觉非常的有难度,还不是很能理解。

参考资料

《Java程序设计与数据结构教程(第八版)》

转载于:https://www.cnblogs.com/yu757503836/p/9100942.html

20172332 2017-2018-2 《程序设计与数据结构》实验三报告相关推荐

  1. 20162329 张旭升 2017 - 2018 《程序设计与数据结构》第五周总结

    20162329 2017-2018-1 <程序设计与数据结构>第五周学习总结 教材学习内容总结 1.学习目标 了解集合的概念 了解并使用抽象数据类型 初步了解使用Java泛型 学习栈这种 ...

  2. 20172305 2017-2018-2 《程序设计与数据结构》实验三报告

    20172305 2017-2018-2 <程序设计与数据结构>实验三报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 谭鑫 学号:20172305 实验教师:王志 ...

  3. 20172324 2017-2018-2《程序设计与数据结构》实验三报告

    20172324 2017-2018-2<程序设计与数据结构>实验三报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 曾程 学号:20172324 实验教师:王志强 ...

  4. 20182326 2019-2020-1 《数据结构与面向对象程序设计》实验三报告

    20182326 2019-2020-1 <数据结构与面向对象程序设计>实验三报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 刘颖洁 学号:20182326 实验 ...

  5. 数据结构java 图实验代码_20172329 2018-2019 《Java软件结构与数据结构》实验三报告...

    20172329 2018-2019-2 <Java软件结构与数据结构>实验三报告 课程:<Java软件结构与数据结构>html 班级: 1723java 姓名: 王文彬lin ...

  6. 数据结构 实验三 栈的基本运算

    栈的基本运算 任务一: 顺序栈的基本操作 任务描述: 本关任务:实现顺序栈的基本操作,包括栈的初始化.置空栈.进栈.出栈.判栈空.栈的输出(遍历)等. 相关知识: 为了完成本关任务,你需要掌握: - ...

  7. 数据结构实验三 图的操作与实现

    系列文章: 数据结构实验一 线性表.堆栈和队列的操作与实现 数据结构实验二 二叉树的操作与实现 数据结构实验三 图的操作与实现 数据结构实验四 查找和排序算法实现 一.实验目的: 1.领会图的两种主要 ...

  8. c语言数据结构二叉树实验报告,数据结构实验三二叉树实验报告.doc

    数据结构实验三二叉树实验报告 数据结构实验报告 实验名称: 实验三--二叉树 学生姓名: XX 班 级: 班内序号: 学 号: 日 期: 1.实验要求 1.1实验目的 通过选择下面两个题目之一进行实现 ...

  9. 2017-2018-1 《信息安全系统设计基础》实验三报告

    2017-2018-1 <信息安全系统设计基础>实验三报告 本小组成员:20155303.20155213 --------CONTENTS-------- 任务一 C语言模拟wc命令 任 ...

最新文章

  1. Mysql优化系列(1)--Innodb重要参数优化
  2. java找出两个字符串中所有共同的子串_【Java笔记】
  3. 设置计算机的启动顺序CDROM.C.A,amibios怎么设置cdrom
  4. 文档过期打不开怎么办_标准的产品需求文档在这里!(详细说明版)(2)
  5. 无线连接 服务器,服务器无线远程连接
  6. python+pyqt5实现24点小游戏
  7. 【转】TranslateAnimation详解
  8. 获取文件夹中所有文件的文件名[重复]
  9. 数字图像处理与机器视觉_简单自动智能识别物体程序(机器视觉+数字图像处理)...
  10. TreeMap内部实现简介
  11. Android进阶(三) 数据存储之SharedPreference
  12. html武侠文字游戏源码,执剑行!最新武侠文字mud游戏
  13. SQL server 2005下载地址
  14. 2022年奶茶行业发展趋势
  15. Apple中文社区平台的 Mac 用户群体
  16. 高中计算机竞赛学什么,什么是高中数学竞赛,要怎么去做?
  17. 谈业务流程全生命周期管理支撑业务流程再造(1)
  18. MySQL函数计算24小时平均浓度对应的IAQI和AQI
  19. 谷歌搜索留痕组合工具,批量生成
  20. Bootstrap 4中使用BootstrapTable时需要导入popper.js

热门文章

  1. BASIC-2 01字串
  2. Java中集合(七)Collections 一个操作集合的工具类
  3. 【Qt】2D绘图之绘制路径
  4. 【Linux网络编程】UDP编程
  5. 【Linux系统编程】进程间通信之无名管道
  6. 【Linux】一步一步学Linux——cd命令(20)
  7. [Qt教程] 第12篇 2D绘图(二)渐变填充
  8. java乒乓_java – 正确实现乒乓游戏
  9. 和java通信_[源码和文档分享]基于JAVA的即时通信软件
  10. oracle重命名日志成员出错,Oracle日志文件