WordCount(java)
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)的更多相关文章
- 如何夯实(Java)编程基础,并深入学习和提高
如何夯实(Java)编程基础,并深入学习和提高? 240赞同反对,不会显示你的姓名 匿名用户 240 人赞同 多学习...网上自学的学习网站很多,见以下榜单~一.汇总榜单: 公开课_学习网站导航 收录 ...
- TCL校园招聘——软件开发工程师(java) 只招5个。。。
简介 TCL集团股份有限公司创立于1981年,是全球性规模经营的消费类电子企业集团之一,广州2010年亚运会合作伙伴,总部位于广东省惠州市仲恺高新区TCL科技大厦.旗下拥有TCL集团.TCL多媒体科技 ...
- UEditor上传图片到七牛云储存(java)
我们的网站一般放在虚拟空间或者服务器上,图片如果存在本地目录,会占用很多空间和流量,还增加了负担,好的办法是把图片存放到云储存服务里面,平时用url去拿 云储存:普遍说又拍云和七牛比较好,看到七牛免费 ...
- 开源工作流 Bonita BPM (JAVA)
Bonita BPM 开源工作流 Bonita BPM (JAVA) http://www.bonitasoft.com/
- ZeroMQ(java)中对IO的封装(StreamEngine)
哎,各种各样杂七杂八的事情...好久没有看代码了,其实要搞明白一个与IO相关的框架,最好的办法就是把它的I/0的读写两个过程搞清楚...例如在netty中,如果能将eventLoop的运行原理搞清楚, ...
- 编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码
转自:编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码 JDK:java version “1.8.0_31”Java(TM) SE Runtime Environment ( ...
- 随机产生30个两个两位数相加的题目(java)
编程思路: 1首先遇到JAVA产生随机数的问题. 2把产生的随机数设定范围. 3把划分的范围再分四个小区段分别对应四则运算法则加减乘除. 4打印输出. 题目源代码(Java) package coun ...
- Android(java)学习笔记267:Android线程池形态
1. 线程池简介 多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力. 假设一个服务器完成一项任务所需时间为:T1 创建线程时间, ...
- MongoDB的update有关问题(JAVA)——如何一次更新所有的相同记录
MongoDB的update问题(JAVA)——怎么一次更新所有的相同记录用如下这个函数:public WriteResult update(DBObject q, DBObject o, boo ...
随机推荐
- winform使用log4.net
因为我最近负责的Winform项目,好多都用到了这个log4net的日志功能,开发程序对数据一般都要求做到雁过留痕,所以日志对于我们程序员是不可或缺.因此我把对log4net的使用做一个记录总结,以便 ...
- 在单机Docker上安装 Traefik 反向代理-负载均衡器
一.创建Traefik和容器应用的连接网络 sudo docker network create traefik-net 二.下载Traefik样本配置文件wget https://raw.githu ...
- java代理通俗简单解析
1 代理 1.1 代理的概念和作用 代理的概念很好理解,就像黄牛代替票务公司给你提供票,经纪人代理艺人和别人谈合作.Java的代理是指实现类作为代理类的属性对象, ...
- PyQt5——高级控件
PyQt5高级控件使用方法详见:https://blog.csdn.net/jia666666/article/list/4?t=1& PyQt5高级控件汇总: 1.QTableView 2. ...
- 多功能版vue日历控件
下载地址:https://pan.baidu.com/s/1nvpx0tB5cIvvqHuApz_MpQ 之前写了一个简单的vue日历控件:https://www.cnblogs.com/mrzhu/ ...
- iframe之间的postMessage传参
1.传参 function IframeClose() { var obj = {method: "iframeClose"}; window.parent.postMessage ...
- SWUST OJ(1103)
删除顺序表中指定区间的数据 #include <iostream> #include <cstdlib> using namespace std; int main() { i ...
- Vue 知识整理—01-基础
一:Vue是什么? Vue是一个JS框架. Vue.js是一套构建用户界面的渐进式框架. 库和框架的区别: ☞库:提供一些 API 工具函数,体现了封装的思想,需要我们主动调用: ☞框架:提供一套完整 ...
- Debian Nginx 下载 .apk 文件时候报 403 错误 [1]
一.版本介绍 Degian : 8 jessie Nginx : 1.6.2 发生时间 : 2018-12-15 二.问题说明 客户浏览器访问Nginx的公开目录中放入了一个.apk文件,公开目录可 ...
- SQL server 数据库的版本为661,无法打开,此服务器只支持655版及更低版本。不支持降级路径
亲测有效. 解决方案:造成这个错误是因为把本地的SQL Server (MSSQLSERVER)服务给禁止了,而把 SQL Server (SQLEXPRESS)服务给启动了,因为这样子,本来应该在数 ...