20145335郝昊《java程序设计》第三次实验报告

实验目的与要求

  • 以结对编程的方式编写一个软件,Blog中要给出结对同学的Blog网址,可以拍照展现结对编程 情况,可以参考一下其他学校的作业。
  • 记录TDD和重构的过程,测试代码不要少于业务代码,Eclipse中refactor菜单下重构技能不少于5个。
  • 团队代码要使用git在实验中托管,要使用团队中另一个同学的代码托管。
  • 程序要有GUI界面,参考用户界面和用户体验。
  • 实验报告中统计自己的PSP时间(Personal Software Process)。

实验内容

(一)敏捷开发与XP

  • 学习软件工程的标准和流程,其中主要以敏捷开发流程为主,而其中有一极限编程作为学习流程的主要软件开发方法。包括:编码,测试,倾听,设计,作为学习者,我主要关注和研究了编码标准、结对编程、代码集体所有、测试、重构等。

编码标准

  • 编码是一个即主观又客观的过程,每个程序员都有他自己的编程风格,但是不管到底是怎么编程,都要有一个良好的编程风格,而这个风格,就是编程标准,让代码具有了良好的可读性。

  • 其次通过百度知道Idea是自动格式化代码的。而我采用Idea编译了代码,所以会简便许多。

  • 但还是参照实验指导书给手动给代码添加空格,这样显得更美观许多。

重构过程

  • 在现代IDE中,Refactor几乎是一项标配功能。当我们编好程序,但却发现程序的命名有问题,或者发现有需求改名可以使用如下的方法。为改善既有代码的功能。我们可以使用如下方法.

  • 因为我使用Idea编辑代码,或许一些细节操作过程会与Eclipse的有些出入。

  • 在下面的程序中,不仅可以对文件名进行重构,还可以对一些其他项目进行操作。以上一个例子选中buffer,执行Refactor

Git的使用

  • 在传代码方面学会使用git会非常方便,git可以成量的有顺序的上传代码。

  • 在使用git上传代码的时候除了之前的直接利用git addgit commitgit push等命令行外还可以用这次实验指导里的方法上传代码。

  • 首先在某个文件夹下单机鼠标右键Git Bash Here会弹出来git 的命令行,实验命令行git clone在中输入命令git clone + 项目地址git clone https://git.oschina.net/java-besti-is-ljp然后git会自动网络连接,并下载这个https://git.oschina.net/java-besti-is-ljp项目里的所有文件,并在当前的文件夹下形成一个新的文件夹。

  • 之后打开这个下载的文件夹,将所需要的文件,或者文件夹放入这个文件中。

  • 继续使用Git软件,一步步在git命令行内执行命令。首先在用git clone下载的文件夹下右键Git Bash Here然后一次执行命令行。



  • 使用命令操作

    1.git status

    2.git add如果是文件夹,直接输入文件夹即可,如果是文件需要加上后缀,如asd.java

    3.git status

    4.git commit -m"XXXX"引号内的的东西是推送标签,如exp3实验三

    5.git push origin master

    6.这一步为输入账户和密码,以完成最后一步的代码上传。

  • 使用这个git命令行操作感觉有些投机取巧之意,没有很完整的按照直接上传的步骤,而是先下载,在上传。因为使用命令行git clone可以下载所有已知的项目的文件,但是在上传的时候确只能传回自己的账户信息内,所以有投机取巧之意。如果在开源中国的网站上将团队的队友添加至开发者,这样的话不仅可以下载代码,在上传的时候也可上传至团队队友的账户内,实现对同一个代码的不同修改,也是这次实验最终目的。



实验总结:

  • 通过本次实验,从java程序开发方式到代码重构都有了新的认识,同时在结对编程中体会到了团队协作的优点,在整个编程过程中对于程序整体设计理念有了更新的认识。

  • 在试验过程中,出现了vim指令操作不明,无法保存退出的情况,之后通过查找vim指令集,得知“:wq”为保存退出指令。后经使用,并未保存退出,之后经过仔细查阅其他博客园博主的帖子,发现先要通过“ctrl+c”或者“esc”进行退出,之后进过退出操作,成功完成。

实验PSP (Presonal Sowftware Process)时间

步骤 耗时 百分比
需求分析 5 6.25%
设计 10 12.5%
代码实现 50 62.5%
测试 10 12.5%
分析总结 5 3.25%

20145335《java程序设计》第三次实验报告的更多相关文章

  1. 20145330《Java程序设计》第二次实验报告

    20145330<Java程序设计>第二次实验报告 实验二 Java面向对象程序设计 实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承多态 3.初步掌握UM ...

  2. 20145320《Java程序设计》第二次实验报告

    20145320<Java程序设计>第二次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.12 15: ...

  3. 《Java程序设计》第二次实验报告

    20145220 <Java程序设计>第二次实验报告 课程:Java程序设计 指导教师:娄嘉鹏 实验日期:2016.04.12 实验名称:Java面向对象程序设计 实验内容 初步掌握单元测 ...

  4. 20145333 《Java程序设计》第二次实验报告

    2014333 <Java程序设计>第二次实验报告 课程:Java程序设计 指导教师:娄嘉鹏 实验日期:2016.04.12 实验名称:Java面向对象程序设计 实验内容 初步掌握单元测试 ...

  5. 20145240 《Java程序设计》第二次实验报告

    20145240 <Java程序设计>第二次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1452 指导教师:娄嘉鹏 实验日期:2016.04.12 实验 ...

  6. Java程序设计第四次实验报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:java程序设计 班级:1352  姓名:何伟钦  学号:20135223 成绩:            指导教师:娄嘉鹏 ...

  7. 20145216史婧瑶《Java程序设计》第二次实验报告

    实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...

  8. 20145231《Java程序设计》第二次实验报告

    实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD: 理解并掌握面向对象三要素: 初步掌握UML建模: 熟悉S.O.L.I.D原则: 了解设计模式: 实验要求 实现并体会例子中代码的 ...

  9. 201521123008<java程序设计>第三周实验总结

    1.本周学习总结 2.书面作业 1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; pub ...

随机推荐

  1. java中Logger.getLogger(Test.class),即log4日志的使用

    log4的使用方法: log4是具有日志记录功能,主要通过一个配置文件来对程序进行监测有两种配置方式:一种程序配置,一种文件配置有三个主要单元要了解,Logger,appender,layout. l ...

  2. 初级Java面试题 – SSM框架篇

    加入我的QQ群(701974765) 获取更多好用又好玩的软件,还有不定期发放的福利呦(- ̄▽ ̄)- Spring的优点/对Spring的理解 Spring的AOP编程 Spring的IOC Spri ...

  3. xpath scrapy shell

    w from scrapy.spider import Spider from scrapy.crawler import CrawlerProcess import pymysql conn = p ...

  4. wiki配置文件

    jira数据库配置文件(链接:https://blog.csdn.net/jiangguilong2000/article/details/39718407) /var/atlassian/appli ...

  5. mysql数据库基本知识,简单框架

    https://www.cnblogs.com/geaozhang/p/7347950.html

  6. Echarts树图定制详解

    本文讲的是如何定制Echarts的tree图.主要包括下载.全局变量名修改.左键菜单添加.右键菜单添加.内容缩放.文本过滤高亮等. 一 说明 Echarts中提供了tree图,但实际项目中,该tree ...

  7. 【opencv】caffe 读入空图导致opencv错误

    OpenCV Error: Assertion failed (ssize.area() > ) /modules/imgproc/src/imgwarp. 根据错误提示,查看一下opencv源 ...

  8. Unity3D优化技巧系列七

    笔者介绍:姜雪伟,IT公司技术合伙人.IT高级讲师,CSDN社区专家,特邀编辑.畅销书作者,国家专利发明人;已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D ...

  9. php微信支付回调验证

    //字典排序拼接字符串 function getWxPaySignature($arr){ ksort($arr); $str = ''; foreach ($arr as $k=>$a){ $ ...

  10. 国内NLP的那些人那些会

    统计学和语言学专家都列在一起了,没有区分.1,黄昌宁,1937年生于广东,1955年考入清华大学电机系,1961年毕业并留校任教至博士生导师, 1983-1984年赴美国耶鲁大学进修,1986-198 ...