第一次写博客,这次也是本学期写到第一个程序。

  老师要求网址:http://www.cnblogs.com/jiel/p/3311400.html#2777556

一.项目预计时间

一开始想使用不熟悉的C++或者C#,会花就多时间熟悉语法,而且使用Visual studio也将提高所花时间。

计划:

1、使用学习熟悉下C++:4小时;

2、代码初次完成(只需完成大致的框架,实现函数):3小时;

3、代码的debug和优化修改:4小时;

4、作业后期的各项完善工作:2小时。

二.项目实际用时

1、一开始看了点c++速成的资料,之后编程的时候一直在查找资料,总之是一直写到底查到底那种;

2、由于没有仔细看老师的要求,结果使自己代码之后大改,其实自己前期没有构思好,弄的代码比较冗杂,不够清晰明确,也浪费太多时间了,花费时间约5小时;

3、之后便是自己的debug和修改时间,自己也是改改停停,不是一次性仔细完成,时间跨越较大,大约花了5小时;

4、后期工作就是自己的进一步优化和博客书写了,总体而言自己没有认真去算法优化,导致程序运行比较慢,没有用哈希或者二叉树优化算法,算法的运行速度不够高,自己下次会好好注意的,加快作业完成速度,让自己有更多时间可以优化代码,提高算法水平,用时3小时。

总用时:15+小时吧。由于统计也不是很准确,确实花了很多时间,也是太久没写程序了,忘记了很多,也加上接触新知识,有点陌生。

三.项目的表现和性能的分析

程序正确(经过多次与多种文件测试,考虑了各种情况,运行是正确的),可以由于运行速度不是很快,程序遇到大目录会许久才可以运行完成。

1、cpu使用百分比情况:

这儿可以看出占用CPU有点高,伙伴们都是10%到20%,而自己在20%到40%之间,代码要好好修改了。

2、

关于VisualStudio性能分析数据中的独占样本数和非独占样本数

3、性能分析系统通知

还好没有警告,自己代码还是勉强可以的。

四.项目的测试样例

1、测试程序区分单词合乎标准的能力

测试用例:

运行结果:
结果运行正确!
 
2、测试程序大小写合并于排序的能力
测试用例:
运行结果:
 结果运行正确!
 
3、测试程序两个单词的统计能力
测试用例使用的事老师的此次程序要求就的博客:
运行结果:
结果同伙伴们相比是一致的。
 
4、测试程序三个单词的统计能力
测试仍然用老师的程序要求博客
运行结果:
运行结果与伙伴们相比一致。
 
5、测试空文件夹
运行结果:
除了生成“程刚.txt"文件夹,无文件内容输出,正确!
 
6、测试空文件
(文件夹中只有一无任何内容的txt文件)
运行结果:
运行结果正确!
 
7、测试拥有多个文件的文件夹
测试用例(两个文件夹):
 
运行结果:
运行结果正确!
 
8.测试拥有子文件夹的文件夹
还是上两个文件,一个在"d:\124"文件夹中,一个在"d:\124\新建文件夹中"
命令行输入"d:\124"
运行结果:
运行结果正确!
 
9、测试百度下载的"The Kite Runner.txt"576K的一个文件

运行结果:

运行结果与伙伴们的一致。

10、将我这次的ConsoleApplication1.cpp代码装成txt进行测试:

运行结果:

注:此次的截图由于输出格式不正确,代码之后进行改正了,而截图没有换,除了输出格式不同,实际输出是一致的。

五.收获

此次算是第一次用C++些大一点的程序,实现一个功能,在查找C++资料的过程中自己学到许多原来不知道的知识。而且使用

Visual studio 2013这么高大上的软件,虽然还是没有全部弄清楚其功能,但是也被其强大的功能所折服,软件性能很好,除了

占用电脑很大资源T T。

THE First Individual Project - Word frequency program的更多相关文章

  1. Individual Project - Word frequency program by HJB

    using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;us ...

  2. Limeng:Individual Project: Word frequency program -BUAA Advanced Software Engineering

    11061190-李孟 Implement a console application to tally the frequency of words under a directory (2 mod ...

  3. Individual Project - Word frequency program - Multi Thread And Optimization

    作业说明详见:http://www.cnblogs.com/jiel/p/3978727.html 一.开始写代码前的规划: 1.尝试用C#来写,之前没有学过C#,所以打算先花1天的时间学习C# 2. ...

  4. Individual Project - Word frequency program——12061154Joy

    Description&Requirement: http://www.cnblogs.com/jiel/p/3978727.html 项目时间估计 理解项目要求: 1h 构建项目逻辑: 1h ...

  5. SoftwareEngineering Individual Project - Word frequency program

    说实话前面c#实在没怎么学过.这次写起来感觉非常陌生,就连怎么引用名空间都忘记了.在经过恶补后还是慢慢地适应了. 1.项目预计用时: 构建并写出大概的数据结构,程序框架及模块: 30min 实现文件夹 ...

  6. Individual Project - Word frequency program

    1.项目预计用时 -计划学习C#和百度一些用法的时间:5小时 -项目本身打算写两个类,一个是遍历搜索文件夹的,另外一个用来统计单词.计划用时:5小时 2.项目实际用时 学习C#以及正则表达式的用法:3 ...

  7. Record for Individual Project ( Word frequency program )

    1.  预计时间 ● 对问题总体的理解.规划:10 min ● 设计编写程序:5 h ● 调试: 分模块-40 min; 总体-40min ● 测试(性能分析).改进:1 h 2.  实际用时 ● 对 ...

  8. Individual Project - Word frequency program-11061171-MaoYu

    BUAA Advanced Software Engineering Project:  Individual Project - Word frequency program Ryan Mao (毛 ...

  9. Project: Individual Project - Word frequency program----11061192zmx

    Description & Requirements http://www.cnblogs.com/jiel/p/3311400.html 项目时间估计 理解项目要求: 1小时 构建项目逻辑: ...

随机推荐

  1. knockoutjs关于ko.bindingHandlers的updata订阅

    ko.bindingHandlers是先执行init进行初始化数据的绑定(如果需要执行updata进行数据更新可以不用初始化); init: function(element, valueAccess ...

  2. HTML 中点击<a>标签,页面跳转执行过程

    HTML链接使用的是<a>标签 点击超链接,后台的执行大致如下: <a href="https://www.baidu.com">超链接</a> ...

  3. Oracle11g链接提示未“在本地计算机注册“OraOLEDB.Oracle”解决方法

    当 用,Provider=OraOLEDB.Oracle方式访问ORACLE11g数据库.出现 未在本地计算机注册“OraOLEDB.Oracle”提供程序提示.解决方案如下: 客户端环境:Win7 ...

  4. 布局:高度已知,布局一个三栏布局,左栏和右栏宽度为200px,中间自适应

    需求:高度已知为200px,写出三栏布局,左栏和右栏各位200px,中间自适应,如下图所示: 方法一:float浮动布局 原理是:定义三个区块,需要注意的是中间的区块放在右边区块的下面,统一设置高度为 ...

  5. 控件布局_FrameLayout(网格布局)

    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&qu ...

  6. 【Java多线程】线程状态、线程池状态

    线程状态: 线程共包括以下5种状态.1. 新建状态(New) 线程对象被创建后,就进入了新建状态.例如,Thread thread = new Thread().2. 就绪状态(Runnable) 也 ...

  7. Remainders Game (中国剩余定理)

    题意:已知k和一个集合C={c1,c2,c3....cn},问是否有满足集合C的中国剩余定理的解x,使x%k的值唯一确定. 数学知识: #include<iostream> #includ ...

  8. 多个Linux发行版安装ss服务端

    本文仅做技术探讨,请在遵守相应的法律法规的前提下使用. Centos 7一键安装脚本 简单快捷,随机生成密码,默认端口默认加密类型 bash <(curl -s http://morning.w ...

  9. virtualbox+vagrant学习-1-环境安装及vagrantfile的简单配置-Mac系统

    在学习docker-machine时,发现需要使用到虚拟化平台,所以选择了使用virtualBox. 然后后面发现需要使用vagrant来在mac系统中作为虚拟机管理软件,所以下面将会简述我自己学习使 ...

  10. 在Eclipse中运行Web项目Jsp网页时提示端口被占用的解决办法:Several ports (8005, 8888, 8009) required by Tomcat v9.0 Server at localhost are already in use.

    问题: 在Eclipse中运行Web项目Jsp网页启动Tomcat时提示端口被占用: Several ports (8005, 8080, 8009) required by Tomcat v9.0 ...