码云项目地址

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. IOS - CoreData 增删改查

    #pragma mark - Core Data Methods - (void)insertObjectWithFileName:(NSString *)fileName { /** SQL新增记录 ...

  2. Vue学习之路第十篇:简单计算器的实现

    前面九篇讲解了vue的一些基础知识,正所谓:学以致用,今天我们将用前九篇的基础知识,来模拟实现计算器的简单功能,项目价值不高,纯粹是为了加深掌握所学知识. 学前准备: 需要掌握JavaScript的e ...

  3. 在centos系统中增、删交换分区

    Swap介绍: Linux 将物理内存分为内存段,叫做页面.交换是指内存页面被复制到预先设定好的硬盘空间(叫做交换空间)的过程,目的是释放对于页面的内存.物理内存和交换空间的总大小是可用的虚拟内存的总 ...

  4. Redis:持久化之RDB和AOF

    Redis:持久化之RDB和AOF RDB(Redis DataBase) 在指定的时间间隔内将内存中的数据集快照写入硬盘 也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里. R ...

  5. java实例化对象的五种方法

    1.用new语句创建对象,这是最常见的创建对象的方法. 2.通过工厂方法返回对象,如:String str = String.valueOf(23); 3.运用反射手段,调用java.lang.Cla ...

  6. 【转】C# winform 加载网页 模拟键盘输入自动接入访问网络

    [转]C# winform 加载网页 模拟键盘输入自动接入访问网络 声明: 本文原创,首发于博客园 http://www.cnblogs.com/EasyInvoice/p/6070563.html  ...

  7. 阅读《Android 从入门到精通》(15)——数字时钟

    数字时钟(DigitalClock) java.lang.Object; android.view.View; android.widget.TextView; android.widget.Digi ...

  8. firefox 被劫持hao123 主页

    快捷方式没有问题 也不是ff的配置文件里user.js的问题 是haozip的问题 最后查到是windows/system/Hao*.sys 这个文件的问题(还有zolsoft.sys) 删除这个文件 ...

  9. Android生命周期里你也许不知道的事

    Android生命周期预计连刚開始学习的人都再熟悉只是的东西了,但这里我抛出几个问题.也许大家曾经没有想过或者可能认识的有些错误. 一.当A启动B时,A和B生命周期方法运行的先后顺序是如何的?当按返回 ...

  10. 不仅仅是Google,您必须知道的全球十大地图API

    不仅仅是Google,您必须知道的全球十大地图API 一.总结 一句话总结:除了google,也有其它很多很好的地图,必应地图(Bing Maps),OpenLayers 二.不仅仅是Google,您 ...