第一个个人项目——论文查重

作业属于的课程 https://edu.cnblogs.com/campus/gdgy/cse2021
作业要求 https://edu.cnblogs.com/campus/gdgy/cse2021/homework/12254
作业的目标 https://edu.cnblogs.com/campus/gdgy/cse2021/homework/12254
GitHub代码 https://github.com/666-3334/3120004743

一、PSP

Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
· Estimate · 估计这个任务需要多少时间 360 660
Development 开发
· Analysis · 需求分析 (包括学习新技术) 20 30
· Design Spec · 生成设计文档 20 20
· Design Review · 设计复审 15 15
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 20 10
· Design · 具体设计 20 40
· Coding · 具体编码 360 660
· Code Review · 代码复审 100 20
· Test · 测试(自我测试,修改代码,提交修改) 100 47+
Reporting 报告
· Test Repor · 测试报告 100
· Size Measurement · 计算工作量 20 20
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 30 20
· 合计

二、设计与分析

我是提前在网上搜一些关于论文查重的实现,但搜出来的大多数的Java实现,还有就是python,但考虑到我学的方向是前端,就想用前端的语言来写,但看了好久还是没看到JavaScript实现的文章,后面才想到,Node.js就是类似后台的Java,所以开始用node.js搜索,但也寥寥无几,只能自己去看算法实现的过程,所以就花费的挺多时间。

1、引用的node.js包

第一个个人项目——论文查重

参考的算法:SimHash算法及海明距离

2、定义的方法

第一个个人项目——论文查重

3、单元测试稍后再补

三、总结反思

这个项目最终实现起来代码数量不多,但涉及到的知识点很多都是之前没遇到过的,主要是算法及其实现,在这个用node.js实现上面我花费了很多时间,其中还安装一个工具包我花了差不多一天,要学会更准确地搜索,还要再系统学习一下。
收获:

  • 英语很重要,有时候运行出错先看提示会比直接复制搜更快,搜索引擎难搜出和你一样的问题,但看懂问题你可能更懂怎么去改
  • 学习了一点GitHub的操作
    不足:
  • 时间碎片化,任务实际时间算不出来,只是一个大概的估计,要加强时间管理
上一篇:学习笔记之Ubuntu 20.04更换清华软件源


下一篇:Ubuntu18 install Anaconda