zoukankan      html  css  js  c++  java
  • 第三次作业

    一:

    结对伙伴地址:https://www.cnblogs.com/543123abcxmr/p/10658409.html

    二:PSP表格:

    Personal Software Process Stages

    预估耗时(分钟)

    实际耗时(分钟)

    计划

     10

     10

    · 需求分析 (包括学习新技术)

     100

     100

    · 代码规范 (为目前的开发制定合适的规范)

     20

     20

    · 具体设计

     20

     20

    · 具体编码

     150

     200

    · 代码复审

     50

     50

    · 测试(自我测试,修改代码,提交修改)

     60

     80

    · 事后总结, 并提出过程改进计划

     30

     30

    合计

     440

     510

    三:解题思路:

    本次项目中,我和慕荣一开始决定分工写代码,后来出现了一点小问题,最终决定采用我的代码在我的代码上增加了一些改动,大家一起完成了测试。

    1.说实话,看到题目的那一刻我比较茫然,因为之前没有写过类似的,所以就先上网查阅了相关的资料,知道了大体要用到哪些函数,因为之前数据结构也没好好学,所以导致dictionary也不太会用,hash表也是,但是通过learning by doing也还可以,大致知道了怎么用,虽然用得不太好,但也比之前好多了不是。

    2.在读取文本信息的时候,一是采用了steamreader,但是值得注意的是,就算你用完之后close以后还是不可以直接再来一次steamreader,得使用using才可以。二是使用了file.readalllines

    3.切分文本:因为能力有限,所以一开始我并不知道每一步该用到什么函数/表达式,所以当我已经切分好了后,才意识到用正则表达式更好。

    4.在排序的时候本来一开始用的是sortedlist,当时想的是可以自动排序,结果写到一半的时候只能key值排序,不能按value排序,而如果把两个反过来的话又不能保证key唯一,遂作罢。

    5.按照字典序输出到文本txt,当我把大体做完了以后,和伙伴讨论的时候才发现这部分忘记写了...后采用了file.AppendAllText。

    四:设计实现

    1.按照题目要求分别写了统计字符数函数,统计单词数函数,统计有效行数函数,统计前n多的单词函数,统计出现次数前十的单词以及切分指定长度词组我放在了main函数里,通过一开始main函数实现了把所有函数连接起来了。

    2.一些代码部分:

    3.运行结果:

    (词频统计这里还有问题,我有设置端点循环次数是对的,但是不知道为什么显示出来就成这样了。)

    五:代码互审:

    在代码互审阶段,伙伴发现了我没有输出到txt文本...和可以采用file.readAllLines读入文本。

    六:单元测试+性能分析:

    不出意料,在性能分析的时候发现果然是main函数的时间最多,其原因就是因为for循坏,如果读入的文本越大则占有的时间也就愈多了,但是无奈我还没有想到方法改进。

    七:异常处理:

    此次异常处理的太少了,下次值得注意。

    八:结对过程:

    九:总结:

    1.在这次项目中学到了很多,其实老实说我在第三部分列出来得都是我现学得...(所以足以说明我太菜了)其实在这次项目中还有三个地方有大问题,一是:指定长度的词组的词频我只实现了输出词频却没能实现统计。二是:字符串分割时我明明分割了但是不知道为什么会出现"????",而且文本里其实也没有"????"(我猜想如果用到正则可以改掉这个bug但是考虑到最终改动较大,故没有完善。)三是:我的文本信息并没有在控制台输入,是写在了程序里,这也就意味着我写死了...虽然我没能实现全部功能但是我觉得也学到了不少。

    2.在结对编程的过程中,感觉也还好,复审小伙伴能发现一些自己没能察觉的点,手动点赞。大家有所分工也不错。

    最后:

    人生没有回程线,活在当下,day day up是最好的状态。

  • 相关阅读:
    2021.2.5 学习总结
    2021.2.1 学习总结
    2021.2.4 学习总结
    学习:C#中struct与class的区别(转)
    学习:DirectoryEntry::Path 属性(winnt、LDAP、IIS)(转)
    学习:Asp.net页面传值总结(转)
    学习:WinForm分页控件(转)
    学习:c#中抽象类和接口的相同点跟区别(转)
    学习:C#中获取当前路径的几种方法(转)
    记录:new关键字、new修饰符、new约束
  • 原文地址:https://www.cnblogs.com/pyxhopkins/p/10655550.html
Copyright © 2011-2022 走看看