码云项目地址

PSP2.1

PSP阶段

预估耗时

(分钟)

实际耗时

(分钟)

Planning

计划

20

20

Estimate

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

60

70

Development

开发

60

60

Analysis

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

30

20

Design Spec

生成设计文档

20

20

Design Review

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

15

20

Coding Standard

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

10

10

Design

具体设计

20

30

Coding

具体编码

40

60

Code Review

代码复审

30

20

Test

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

20

10

Reporting

报告

10

10

Test Report

测试报告

10

10

Size Measurement

计算工作量

20

10

Postmortem & Process Improvement Plan

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

20

25

合计

385

395

代码说明:
//取出输出文件名
public static String getOutFileName(String canshu){
boolean isNewFile = canshu.contains(" -O");
String fileName = null;
if(isNewFile){ fileName = canshu.substring(canshu.indexOf("-O")+3);}
return fileName;
}
//文件操作,将信息写入文件
public static void writeFile(String fileName,int data){
File file = new File(fileName);// 要写入的文件路径
if (!file.exists()) {// 判断文件是否存在
try {
file.createNewFile();// 如果文件不存在创建文件
System.out.println("文件"+file.getName()+"不存在已为您创建!");
} catch (IOException e) {
System.out.println("创建文件异常!");
e.printStackTrace();
}
} else {
System.out.println("文件"+file.getName()+"已存在!");
} FileOutputStream fos = null;
PrintStream ps = null;
try {
fos = new FileOutputStream(file,true);// 文件输出流 追加
ps = new PrintStream(fos);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
String string = data+"\r\n";// +换行
ps.print(string); // 执行写操作
ps.close(); // 关闭流 System.out.println("文件写入完毕!");
} //参数分析
public Parameter getParameter() {
String para[] = Tools.getParameters(this.string);
Parameter parameter = new Parameter();
for(String opt : para){ switch (opt){
case "-c":
parameter.setShowCharCount(true);
break;
case "-W":
parameter.setShowStringCount(true);
break;
case "-l":
parameter.setShowlineCount(true);
break;
case "-O":
parameter.setOutFileName(Tools.getOutFileName(this.string).replace(" ",""));
break;
default:
if(!parameter.getOutFileName().equals(opt)){ parameter.setFileName(opt); System.out.println(parameter.getOutFileName()+":"+opt);} }
} return parameter;
}
//这两个一个是写入文件,另外一个是对参数进行分析。

思路:直接用java的一些函数实现

类:主要有参数类Parameter,结果保存类Result,另外一个工具类Tool,还有个wordCounter类

测试过程:简单测试重要的函数,解析参数,文件读取,与文件写入

说明:这次主要是简单实现基础功能

worldcount的更多相关文章

  1. Hadoop worldcount

    以前的公司和现在的公司,都用到了hadoop和hdfs.一直没入门,今天照着官网写了一个hadoop worldcount demo 1. hadoop是一个框架,什么是框架,spring是一个框架. ...

  2. WorldCount 结对项目

    合作者:201631062501,201631062129 代码地址:https://gitee.com/guilinyunya/WorldCount 伙伴博客地址:https://www.cnblo ...

  3. hadoop worldcount小程序

    首先在hadoop中建立input文件夹放几个文件,里边写点东西.比如我放了三个,分别写的是 第一个 hello hadoop bye hadoop 第二个 hello world bye world ...

  4. 用scala的actor并发编程写一个单机版的WorldCount

    前言:最近一段时间比较忙,也是比较懒了吧,好长时间没写博客了,新的一年到来,给自己一个小目标,博客坚持写下去,分享一下这历程!废话不多说,开始正题咯(希望大家喜欢!) 首先这算是一个scala程序的入 ...

  5. 3、SpringBoot集成Storm WorldCount

    RandomSentenceSpout //数据源,在已知的英文句子中,随机发送一条句子出去. public class RandomSentenceSpout extends BaseRichSpo ...

  6. WorldCount代码检查与优化——软件测试第三次作业

    合作者:201631062222,201631062232 代码地址:https://gitee.com/biubiubiuLYQ/ceshi_secend 本次作业链接地址:https://edu. ...

  7. spark 快速入门 java API

    Spark的核心就是RDD,对SPARK的使用入门也就是对RDD的使用,包括action和transformation 对于Java的开发者,单单看文档根本是没有办法理解每个API的作用的,所以每个S ...

  8. Storm的ack机制在项目应用中的坑

    正在学习storm的大兄弟们,我又来传道授业解惑了,是不是觉得自己会用ack了.好吧,那就让我开始啪啪打你们脸吧. 先说一下ACK机制: 为了保证数据能正确的被处理, 对于spout产生的每一个tup ...

  9. Hadoop之倒排索引

    前言: 从IT跨度到DT,如今的数据每天都在海量的增长.面对如此巨大的数据,如何能让搜索引擎更好的工作呢?本文作为Hadoop系列的第二篇,将介绍分布式情况下搜索引擎的基础实现,即“倒排索引”. 1. ...

随机推荐

  1. thinkphp queue

    composer create-project topthink/think composer require topthink/think-queue php think queue:work -- ...

  2. 洛谷 P1147 连续自然数和 (滑动窗口)

    维护一个滑动窗口即可 注意不能有m到m的区间,因为区间长度要大于1 #include<cstdio> #define _for(i, a, b) for(int i = (a); i &l ...

  3. git 简单理解

    现在git这个版本控制大行其道,弄了半天大概理解了一下他的工作原理. 使用流程 1,安装git ,小乌龟,小乌龟汉化(在设置里面第一项,检查更新,下载中文包安装) 2,设置 小乌龟 ->git ...

  4. oracle间隔分区

    http://blog.csdn.net/rznice/article/details/55048876

  5. OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装

    网上太多的例子搞 OpenLDAP  + phpLDAPadmin  但是没有一个能让你成功配置起来.蛋疼得很.记录一下过程 系统版本:centos7.4 软件版本:2.4.44  超级重要,版本不对 ...

  6. [ReactVR] Add Shapes Using 3D Primitives in React VR

    React VR ships with a handful of 3D primitives. We'll importprimitives like <Sphere/>, <Box ...

  7. hdu 4544 湫湫系列故事——消灭兔子 优先队列+贪心

    将兔子的血量从小到大排序,箭的威力也从小到大排序, 对于每仅仅兔子将威力大于血量的箭增加队列,写个优先队列使得出来数位价钱最少.. #include<stdio.h> #include&l ...

  8. JDBC连接mysql时出现的ssl问题

    使用MySQL数据库时出现如下错误: WARN: Establishing SSL connection without server's identity verification is not r ...

  9. MVC开发模式详解

    转自:https://blog.csdn.net/qq_33991989/article/details/78966071 MVC设计模式详解 1.Model-View-Controller(模型-视 ...

  10. MetaSploit攻击实例讲解------攻击445端口漏洞(kali linux 2016.2(rolling))(详细)

    不多说,直接上干货! 大家,相信最近的这个事件,对于445端口已经是非常的小心了.勒索病毒 445端口是一个毁誉参半的端口,有了它我们可以在局域网中轻松访问各种共享文件夹或共享打印机,但也正是因为有了 ...