20172315 2017-2018-2 《程序设计与数据结构》实验三报告
20172315 2017-2018-2 《程序设计与数据结构》实验三报告
课程:《程序设计与数据结构》
班级: 1723
姓名: 胡智韬
学号:20172315
实验教师:王志强
实验日期:2018年5月16日
必修/选修: 必修
1.实验内容
(1)代码规范
Eclipse的内容替换成IDEA安装alibaba 插件,解决代码中的规范问题。在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化,再研究一下Code菜单,找出一项让自己感觉最好用的功能。提交截图,加上自己学号水印。
public class CodeStandard {
public static void main(String [] args){
StringBuffer buffer = new StringBuffer();
buffer.append('S');
buffer.append("tringBuffer");
System.out.println(buffer.charAt(1));
System.out.println(buffer.capacity());
System.out.println(buffer.indexOf("tring"));
System.out.println("buffer = " + buffer.toString());
if(buffer.capacity()<20)
buffer.append("1234567");
for(int i=0; i<buffer.length();i++)
System.out.println(buffer.charAt(i));
}
}
(2)协同测试
在码云上把自己的学习搭档加入自己的项目中,确认搭档的项目加入自己后,下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用例,测试成功后git add .; git commit -m "自己学号 添加内容";git push;提交搭档项目git log的截图,包含上面git commit的信息,并加上自己的学号水印信息。
(3)重构
Eclipse的内容替换成IDEA完成重构内容的练习,下载搭档的代码,至少进行三项重构,提交重构后代码的截图,加上自己的学号水印。提交搭档的码云项目链接。
(4)密码学应用
以结对的方式完成Java密码学相关内容的学习,结合重构,git,代码标准。提交学习成果码云链接和代表性成果截图,要有学号水印。
2. 实验过程及结果
实验(1)
目标:
- Eclipse的内容替换成IDEA安装alibaba 插件,解决代码中的规范问题。
- 在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化,再研究一下Code菜单,找出一项让自己感觉最好用的功能。提交截图,加上自己学号水印。
代码提交截图:
实验(1)Code中Move Statement功能最有用,可以方便的移动代码,便于修改。
心得:感觉使用了阿里巴巴代码规范后,自己写的代码更加简洁规范了,好的代码不但是要结构清晰,而且排版整洁不乱,所以这个实验我收获良多。我相信我以后写代码基本不会出现代码不规范的情况了。
实验(2)
目标:
- 在码云上把自己的学习搭档加入自己的项目中,确认搭档的项目加入自己后,下载搭档实验二的Complex代码,加入不少于三个JUnit单元测试用例,测试成功后git add .; git commit -m "自己学号 添加内容";git push;
提交搭档项目git log的截图,包含上面git commit的信息,并加上自己的学号水印信息。
代码截图:
心得:这次实验巩固了上次实验学习的JUnit单元测试,也学会了如何把代码上传到他人的项目里。实验(3)
目标:
Eclipse的内容替换成IDEA,完成重构内容的练习,下载搭档的代码,至少进行三项重构,提交重构后代码的截图,加上自己的学号水印。提交搭档的码云项目链接。
截图:
码云链接:https://gitee.com/CS-IMIS-23/20172318/blob/master/src/chap5/pp5_3.java
心得:学习了idea上的重构功能,以后修改起代码更加方便了。使用重构的方式,不改变系统的外部功能,只对内部的结构进行重新的整理。通过重构,不断的调整系统的结构,使系统对于需求的变更始终具有较强的适应能力。实验(4)
目标:
- 参考 http://www.cnblogs.com/rocedu/p/6683948.html,以结对的方式完成Java密码学相关内容的学习,结合重构,git,代码标准。
提交学习成果码云链接和代表性成果截图,要有学号水印。
截图较多,不一一发出,可参考蓝墨云
- JCA( Java Cryptography Architecture, Java加密体系结构):JCA提供基本的加密框架, 如证书、 数字签名、消息摘要和密钥对产生器。
- JCE( Java Cryptography Extension, Java加密扩展包):JCE在JCA的基础上作了扩展, 提供了各种加密算法、消息摘要算法和密钥管理等功能。JCE的实现主要在javax.crypto包( 及其子包) 中
- JSSE( Java Secure Sockets Extension, Java安全套接字扩展包):JSSE提供了基于SSL( Secure Sockets Layer,安全套接字层) 的加密功能。 在网络的传输过程中, 信息会经过多个主机(很有可能其中一台就被窃听) , 最终传送给接收者, 这是不安全的。这种确保网络通信安全的服务就是由JSSE来提供的。
JAAS( Java Authentication and Authentication Service, Java鉴别与安全服务):JAAS提供了在Java平台上进行用户身份鉴别的功能。
3. 实验过程中遇到的问题和解决过程
- 问题1:实验四的Java密码学不知道要做什么
问题1解决方案:在蓝墨云上找到了答案
- 问题2:实验四的密码有关代码无法理解
问题2解决方案:结合密码课上老师讲解的相关知识,再仔细结合老师给的Java 密码学算法仔细研究。
参考资料
- 《Java程序设计与数据结构教程(第八版)》
- 《Java程序设计与数据结构教程(第八版)》学习指导
- 实验三 敏捷开发与XP实践
- Java 密码学算法
转载于:https://www.cnblogs.com/huzhitao/p/9107890.html
20172315 2017-2018-2 《程序设计与数据结构》实验三报告相关推荐
- 20162329 张旭升 2017 - 2018 《程序设计与数据结构》第五周总结
20162329 2017-2018-1 <程序设计与数据结构>第五周学习总结 教材学习内容总结 1.学习目标 了解集合的概念 了解并使用抽象数据类型 初步了解使用Java泛型 学习栈这种 ...
- 20172305 2017-2018-2 《程序设计与数据结构》实验三报告
20172305 2017-2018-2 <程序设计与数据结构>实验三报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 谭鑫 学号:20172305 实验教师:王志 ...
- 20172332 2017-2018-2 《程序设计与数据结构》实验三报告
20172332 2017-2018-2 <程序设计与数据结构>实验三报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 于欣月 学号:20172332 实验教师:王 ...
- 20172324 2017-2018-2《程序设计与数据结构》实验三报告
20172324 2017-2018-2<程序设计与数据结构>实验三报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 曾程 学号:20172324 实验教师:王志强 ...
- 20182326 2019-2020-1 《数据结构与面向对象程序设计》实验三报告
20182326 2019-2020-1 <数据结构与面向对象程序设计>实验三报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 刘颖洁 学号:20182326 实验 ...
- 数据结构java 图实验代码_20172329 2018-2019 《Java软件结构与数据结构》实验三报告...
20172329 2018-2019-2 <Java软件结构与数据结构>实验三报告 课程:<Java软件结构与数据结构>html 班级: 1723java 姓名: 王文彬lin ...
- 数据结构 实验三 栈的基本运算
栈的基本运算 任务一: 顺序栈的基本操作 任务描述: 本关任务:实现顺序栈的基本操作,包括栈的初始化.置空栈.进栈.出栈.判栈空.栈的输出(遍历)等. 相关知识: 为了完成本关任务,你需要掌握: - ...
- 数据结构实验三 图的操作与实现
系列文章: 数据结构实验一 线性表.堆栈和队列的操作与实现 数据结构实验二 二叉树的操作与实现 数据结构实验三 图的操作与实现 数据结构实验四 查找和排序算法实现 一.实验目的: 1.领会图的两种主要 ...
- c语言数据结构二叉树实验报告,数据结构实验三二叉树实验报告.doc
数据结构实验三二叉树实验报告 数据结构实验报告 实验名称: 实验三--二叉树 学生姓名: XX 班 级: 班内序号: 学 号: 日 期: 1.实验要求 1.1实验目的 通过选择下面两个题目之一进行实现 ...
- 2017-2018-1 《信息安全系统设计基础》实验三报告
2017-2018-1 <信息安全系统设计基础>实验三报告 本小组成员:20155303.20155213 --------CONTENTS-------- 任务一 C语言模拟wc命令 任 ...
最新文章
- Day 4:PredictionIO——如何创建一个博客推荐器
- 如何用Pygame写游戏(十八)
- 11g Rac 服务介绍
- 维修 工具 资料 点位图
- java gdal生成彩色tiff文件 并压缩大小
- cad画钟表_CAD中,如何绘制时钟表? 来看看吧
- 使用NPOI设置Excel表的单元格背景颜色
- android signal 6,android项目运行出现Fatal signal 6 (SIGABRT), code -6 in tid 3
- zabbix web 检测
- 2023重庆邮电大学计算机考研信息汇总
- currency conversion/ 货币转换 / currency translation
- 【C#懒蛋编程——5分钟经验分享】01逆序遍历删除,防止迭代器失效
- M1 Mac 即将可以玩到更多 Switch 游戏
- 阿联酋航空与中国南方航空签订代码共享协议
- sor松弛迭代matlab,数值分析Python实现系列—— 二、逐次超松弛迭代法(SOR)
- 用virtual实现TemplateMethod和Strategy--龙之介《Effective C++》实验室
- T66099 小xzy的数对 题解
- 循环嵌套 之 简简单单 的 输出 九九乘法表
- python爬虫基础知识点整理
- ftp服务器上的文件发生错误450,FTP常见错误解决办法
热门文章
- 10月24日云栖精选夜读:2017杭州·云栖大会完美收官 虚拟化平台精彩回顾
- TimesTen 应用层数据库缓存学习:4. 仅仅读缓存
- SQL Server MYSQL 对外键建立索引的必要性
- 十二客推出新版邮箱批量注册
- 微信公众平台开发中提示“该公众号提供的服务出现故障”问题解决
- 学习逆向知识之用于游戏外挂的实现.第二讲,快速寻找植物大战僵尸阳光基址.以及动态基址跟静态基址的区别...
- 【LCS】POJ1458Common Subsequence
- laravel 核心类Kernel
- 【安卓8】文件的读写
- mysql 5.5 中创建的数据库名称全都是小写