zoukankan      html  css  js  c++  java
  • 第四次作业结对编程

    第四次作业 结对编程

    作业要求地址 结对编程
    GitHub项目地址 github地址
    结对伙伴作业地址 秦傲明的作业地址
    我的学号 201731062324
    队友学号 201731062308

    一、PSP表格

    PSP Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 30 50
    · Estimate · 估计这个任务需要多少时间 1320 1470
    Development 开发 1200 1340
    · Analysis · 需求分析 (包括学习新技术) 120 150
    · Design Spec · 生成设计文档 60 50
    · Design Review · 设计复审 (和同事审核设计文档) 40 30
    · Coding Standard · 代码规范 (为目前的开发制定合适的规范) 30 20
    · Design · 具体设计 50 85
    · Coding · 具体编码 720 870
    · Code Review · 代码复审 60 60
    · Test · 测试(自我测试,修改代码,提交修改) 120 75
    Reporting 报告 120 130
    · Test Report · 测试报告 40 50
    · Size Measurement · 计算工作量 30 30
    · Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 50 50
    合计 1350 1520

    结对时候的(非摆拍)照片

    在这里插入图片描述

    二、解题思路

    在经过和队友两人第一次计划的时候,并没有什么思路,只有一个大体方向。然后两个人就认真琢磨题,才有了一些思路。
    解题具体思路见队友博客

    三、代码规范与代码互审

    代码规范

    1、明确方法功能,精确(而不是近似)地实现方法设计。用方法使功能明确化,增加程序可读性,同样方便维护和测试。
    2、有异常需要写出注释(注释最好写在单独的一行),包括异常的详细描述信息,方便问题定位。
    3、避免使用不易理解的数字,最好有有意义的标识来代替。命名使用驼峰法。(如:模型方法:驼峰法。 动作+(关联)+表名。 例 getUserOrder(获取用户订单))
    4、少使用难懂的语句,除非很有必要时。
    5、适当增加空行,按需要换行,以更方便阅读。
    6、不要写冗余无用的代码。if(true)之类的代码块完全不应该出现,用空行隔开该段代码是更好的选择。
    7、空格的使用:关键字之后、“,”之后留空格,双目运算符前后应加空格,单目运算符前后不加空格。
    8、代码一定要相应对齐、并且缩进得当(尽量一个tab四个空格)。
    9、注释要有,但不宜加一些解释简单语句的注释。要边写代码边注释,修改代码的同时修改相应的注释(保证注释与代码的一致性)。

    代码互审

    1、他的有些代码比较冗余,在我提出后就一起修改了。
    2、伙伴的代码可读性是很强的,在一些必要的地方加了注释,而且没有乱命名。
    3、程序对于文本内容的处理使用了正则表达式,清晰明确。整个程序的思路也比较清晰。

    四、代码说明

    代码说明在伙伴的博客上

    点击此处可以进行查看

    五、测试以及性能

    单元测试如下:

    首先进行了两个方法的测试,通过assert进行初值与程序返回值进行比对,结果通过

    在这里插入图片描述
    在初次之后,又多次修改文件里面的单词数后再进行测试,都通过了测试 。这里测试出来的效果和上图并没有什么区别,结果全部通过。

    性能方面
    整个程序运行起来是比较快的,通过VS自带的性能探查器,生成了一份性能报告,结果发现耗时最多的是文件流操作那里 。我们两个想过用什么办法进行修改,从而让整个程序的性能更好,修改之后,只能好那么一点。性能方面,通过VS自带的性能探查器,生成了一份性能报告,结果发现耗时最多的是文件流操作那里 。在这里插入图片描述
    可能是因为需要调用其他方法,然后循环也大大拉低性能,后面也试着去改进,奈何没有时间了,博客作业太猛了。

    六、收获与体会

    1、这次结对编程之后,我发现两人一起写代码,两个人是可以一起交流提高的。当某个人写出来一段很烂的代码的时候,另一个人马上就能发现问题,当遇到一个疑点难点的时候,两人也可以马上就讨论出一个可行的解决方案。总体来说,对代码的质量和问题的处理效率都会得到较大的提高,而且对双方来说也是一个很好的学习机会。
    2、这个学期对于c#的使用还是非常多的了,对C#语言又有了一些提高。看来多编程会提高水平很多。
    3、最近这段时间作业和学习比较重,在时间安排上开始还有点适应不过来,导致结对编程也出现了一些问题,但是好在之后慢慢的调整了回来了一些,虽然时间很紧凑,但是还是成功的完成了这次作业。这对于自己而言也算是一种提升吧

  • 相关阅读:
    Java多线程学习
    JAVA类的加载机制
    这四款也许是电脑录屏软件中免费、无广告且最实用的,程序员必备
    手机端没有好的录屏软件?地表最强移动端录屏软件了解一下?
    手把手教你 在Pytorch框架上部署和测试 关键点人脸检测项目DBFace,成功实现人脸检测效果
    520是秀恩爱吃狗粮,521才是真正的告白日,- Python告白神器用起来 !
    截图还在使用QQ的Ctrl + Alt + A 截图?还不会网页长截图?
    卷积神经网络之卷积操作,使用卷积运算实现图片边缘特征检测
    小白也能弄懂的卷积神经网络(Convolutional Neural Networks )
    官网安装Python包太慢?教你三种下载安装方式-PiP、conda、轮子,教你三种Pytorch的下载安装方式,保证你再也不用出现Error
  • 原文地址:https://www.cnblogs.com/themoon/p/11662799.html
Copyright © 2011-2022 走看看