github项目链接 https://gitee.com/huwenli/Wc.git

1.项目简介

WordCount的需求可以概括为:对程序设计语言源文件统计字符数、单词数、行数,统计结果以指定格式输出到默认文件中,以及其他扩展功能,并能够快速地处理多个文件。

可执行程序命名为:wc.exe,该程序处理用户需求的模式为:

wc.exe [parameter] [input_file_name]

存储统计结果的文件默认为result.txt

2.项目psp表格

PSP2.1表格

PSP2.1

PSP阶段

预估耗时

(分钟)

实际耗时

(分钟)

Planning

计划

 60  100

· Estimate

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

 1800  1200

Development

开发

 1100 100

· Analysis

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

 180    240

· Design Spec

· 生成设计文档

 50    30

· Design Review

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

 30 30 

· Coding Standard

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

 20 20

· Design

· 具体设计

 120 120 

· Coding

· 具体编码

 100 110

· Code Review

· 代码复审

 30 20

· Test

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

 120 300

Reporting

报告

 150 20

· Test Report

· 测试报告

 40 20

· Size Measurement

· 计算工作量

 50 10

· Postmortem & Process Improvement Plan

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

 40 40

3.思路

了解java关于文件的读写,IO流的基本语法;

对字符进行统计,就要会一些正则表达式去处理这些字符串;

思考如何进行单词,行数统计;

学习如何打包jar包;

将项目推到GitHub上;

完成指定博客内容;

将功能进行完善;

4.程序设计实现

行数统计

字符和单词统计

命令输入,将结果写入

command函数

测试函数

5.测试设计过程

1,测试命令输入是否正确

正确的命令测试:-c 1.c

正确的命令测试:-l 1.c

正确的命令测试:-w 1.c

正确的命令测试:-c -l -w 1.c

正确的命令测试:-c -l -w -o 1.c 1.txt

错误的命令测试

result.txt文件内容

2,通过控制台测试代码

6.参考文件链接

java文件读取的几种方式https://www.cnblogs.com/hudie/p/5845187.html
http://www.cnblogs.com/xinz/archive/2011/10/22/2220872.html

7.个人总结

在完成这个项目的过程中没我遇到的最大问题时不知道怎么测试和打包问题,还有便是路径问题。在博客的书写过程中,比较生疏,主要借鉴网上各种资料去处理,模仿格式去完成博客,同时,在撰写博客的过程中我发现这其实是对整个项目过程的一次回顾与反思。于我而言,受益匪浅。希望在之后的学习中可以有更多的收获和进步。

在学习过程中,我觉得最大的时间花费在新软件的学习了解上,网上的博客资料很多但是都过于繁琐,在时间有限的情况下总会出现各种问题。我觉得花费了太多时间在了解新软件上却没有时间完善自己的项目功能。在测试上,我还不会逻辑清晰的层次分明的去学习测试,今后要多花时间去了解各种高效有用的测试方法。

 


 

    

WordCount(java)的更多相关文章

  1. 如何夯实(Java)编程基础,并深入学习和提高

    如何夯实(Java)编程基础,并深入学习和提高? 240赞同反对,不会显示你的姓名 匿名用户 240 人赞同 多学习...网上自学的学习网站很多,见以下榜单~一.汇总榜单: 公开课_学习网站导航 收录 ...

  2. TCL校园招聘——软件开发工程师(java) 只招5个。。。

    简介 TCL集团股份有限公司创立于1981年,是全球性规模经营的消费类电子企业集团之一,广州2010年亚运会合作伙伴,总部位于广东省惠州市仲恺高新区TCL科技大厦.旗下拥有TCL集团.TCL多媒体科技 ...

  3. UEditor上传图片到七牛云储存(java)

    我们的网站一般放在虚拟空间或者服务器上,图片如果存在本地目录,会占用很多空间和流量,还增加了负担,好的办法是把图片存放到云储存服务里面,平时用url去拿 云储存:普遍说又拍云和七牛比较好,看到七牛免费 ...

  4. 开源工作流 Bonita BPM (JAVA)

    Bonita BPM 开源工作流 Bonita BPM  (JAVA) http://www.bonitasoft.com/

  5. ZeroMQ(java)中对IO的封装(StreamEngine)

    哎,各种各样杂七杂八的事情...好久没有看代码了,其实要搞明白一个与IO相关的框架,最好的办法就是把它的I/0的读写两个过程搞清楚...例如在netty中,如果能将eventLoop的运行原理搞清楚, ...

  6. 编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码

    转自:编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码 JDK:java version “1.8.0_31”Java(TM) SE Runtime Environment ( ...

  7. 随机产生30个两个两位数相加的题目(java)

    编程思路: 1首先遇到JAVA产生随机数的问题. 2把产生的随机数设定范围. 3把划分的范围再分四个小区段分别对应四则运算法则加减乘除. 4打印输出. 题目源代码(Java) package coun ...

  8. Android(java)学习笔记267:Android线程池形态

    1. 线程池简介  多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力.     假设一个服务器完成一项任务所需时间为:T1 创建线程时间, ...

  9. MongoDB的update有关问题(JAVA)——如何一次更新所有的相同记录

    MongoDB的update问题(JAVA)——怎么一次更新所有的相同记录用如下这个函数:public WriteResult update(DBObject q,  DBObject o,  boo ...

随机推荐

  1. 实验十一 团队项目设计完善&编码测试

    任务一: 根据OOD详细设计工作要点,修改完善团队项目系统设计说明书和详细设计说明,将完善后内容以<XX团队项目软件设计方案>为名发布在团队博客中,博文中要突出对完善内容的陈述说明,修改部 ...

  2. filesystem type ntfs not configured in kernel

    移动硬盘是NTFS格式的,挂载时候kernel不支持这格式 出现:filesystem type ntfs not configured in kernel 解决:通过sudo yum install ...

  3. Web安全测试工具 Burp Suit 使用简介

    参考文档: https://blog.csdn.net/gitchat/article/details/79168613 https://www.cnblogs.com/nieliangcai/p/6 ...

  4. 使用querybuilder做忽略大小写查询的例子

    自定义Predicate: import com.day.cq.search.Predicate; import com.day.cq.search.eval.AbstractPredicateEva ...

  5. Django的admin相关

    自定义admin展示的内容 根据之前已经创建好了的models from django.db import models class Person(models.Model): name = mode ...

  6. 项目部署Vue+Django(luffy)

    部署路飞学城 部署整体框架图: 1 熟悉linux操作 2 上传路飞学城项目到linux服务器 xftp上传到服务器 lrzsz工具 3 完成python3解释器的安装 在linux命令行模式下, 输 ...

  7. C#基于LibUsbDotNet实现USB通信(一)

    网上C#USB通信的资料比较少, 基本上都是基于LibUsbDotNet 和 CyUsb, 关于打印机设备的还有一个OPOS. 本篇文章基于LibUsbDotNet. 1. 下载并安装 LibUsbD ...

  8. springcloud-feign组件实现声明式的调用

    11.使用feign实现声明式的调用 使用RestTemplate+ribbon已经可以完成对服务端负载均衡的调用,为什么还要使用feign? @RequestMapping("/hi&qu ...

  9. VS2015+VisualSVN+TortoiseSVN安装及使用

    1. SVN 是什么 SVN 是 Apache Subversion 的缩写,是一个开放源代码的版本控制系.这些数据放置在一个中央资料档案库(repository) 中. 这个档案库很像一个普通的文件 ...

  10. C#中,子类构造函数调用父类父类构造函数的正确方式

    正确调用的方式是: