WordCount 个人项目

                                                         项目地址:https://gitee.com/siyayan/WordCount

                PSP2.1表格

PSP2.1

PSP阶段

预估耗时

(分钟)

实际耗时

(分钟)

Planning

计划

 15

 20

· Estimate

· 估计这个任务需要多少时间

 140

 200

Development

开发

 30

 40

· Analysis

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

 15

 45

· Design Spec

· 生成设计文档

 10

 15

· Design Review

· 设计复审 (和同事审核设计文档)

 5

 20

· Coding Standard

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

 5

 5

· Design

· 具体设计

 15

 20

· Coding

· 具体编码

 30

 40

· Code Review

· 代码复审

 15

 30

· Test

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

 30

 45

Reporting

报告

 30

 40

· Test Report

· 测试报告

 15

 15

· Size Measurement

· 计算工作量

 10

 10

· Postmortem & Process Improvement Plan

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

 20

 20

 

合计

 180

 220

项目思路:

1、对WordCount的需求的确定:对程序设计语言源文件统计字符数、单词数、行数。统计结果以指定格式输出到默认文件中。

可执行程序命名为:wc.exe,该程序处理用户需求的模式为:wc.exe [parameter] [input_file_name]。存储统计结果的文件默认为result.txt,放在与wc.exe相同的目录

2、时间有限,我能够完成的功能确定为基本功能,扩展功能暂时不做。

对于字符统计功能所需要注意的地方:空格,水平制表符,换行符,均算字符。

对于单词统计所需要注意的地方:由空格或逗号分割开的都视为单词,且不做单词的有效性校验,例如:thi#,that视为用逗号隔开的2个单词。

其他注意事项:多个参数可以共用同一个输入文件,-o 必须与文件名同时使用,且输出文件必须紧跟在-o参数后面,不允许单独使用-o参数。

3、 设计流程:用户输入——若合法进行具体功能操作——use BufferrReader to count the numbers of char in every line and sum it

                                                                                      ——use split function to divided every line with space and , .

                                                                                      ——use readLine function to add lines.

                                                                                      ——use BufferrWriter and FileWriter to write

                                     ———不合法则不操作

4、由于时间和技术限制,我未能将项目jar包转为exe程序。

程序设计实现过程:

main类中有一些简单测试,

Command类负责接收main中传送的功能字符,并且做好相应功能分配。

CharCount类负责统计字符个数,WordCount类负责统计单词个数,LineCount类负责统计行数,OutFile类负责将相关信息写入文档。

这几个类中main调用Command类,而在Command类中根据需求调用其他4个不同的类,这四个类是平行关系。

部分代码说明:

 

测试设计:

  分为4种不同的情况,对每种情况进行多次测试。情况一:错误输入;情况二:正确输入单个功能;情况三:正确输入多功能;情况四:实现多功能并写入文档

代码运行效果:

 

个人反思总结:

  通过这一次的项目,我了解了很多我从前没有了解过得东西。包括利用PSP文档对自己的整个项目开发过程进行预估分析反思等,还有git/博客园等这些可以好好利用起来的平台和工具。同时我也尝试了把java项目转成exe,虽然在实施这些东西中遇到了很多问题,也还有很多问题没有解决,但是我会继续在这个开放的平台上阅读更多文章、学习更多。

参考相关资料:

java中String的常见用法

https://blog.csdn.net/koches/article/details/7608139

String[] split(regex);

 Java中StringBuffer的用法详解

https://blog.csdn.net/a940902940902/article/details/56372106

字符串分割--java中String.split()用法

https://www.cnblogs.com/dawnLynn/p/5477263.html

手把手教你如何把java代码,打包成jar文件以及转换为exe可执行文件

https://blog.csdn.net/sunkun2013/article/details/13167099

 

猜你喜欢

转载自www.cnblogs.com/SiyaYan/p/9697263.html