word count(小组)

合作者:201631062314,201631062214

码云地址:https://gitee.com/dsjyun/Word-Count-three

一、代码互审:

    第一次都是实现了基本功能,没有完成扩展功能,这次还有个高级功能,于是讨论了后续功能如何实现。

我们的意见基本一致,认为高级功能需要窗体来实现比较简单,于是决定用C#语言来实现。

二、部分代码

using System;
using System.Diagnostics;



namespace WordCount
{
    class program
    {
        static void Main(string[] args)
        {
            Console.Write("wc.exe -c file.c\t返回文件 file.c 的字符数\n" +
                          "wc.exe -w file.c\t返回文件 file.c 的单词总数\n" +
                          "wc.exe -l file.c\t返回文件 file.c 的总行数\n" +
                          "wc.exe -a file.c\t返回更复杂的数据(代码行/空行/注释行)\n" +
                          "wc.exe -o output.txt\t将结果输出到指定文件output.txt\n" +
                          "wc.exe -e stopList.txt\t停用词表,统计文件单词总数时,不统计该表中的单词\n" +
                          "wc.exe -s\t循环执行所有.c文件\n");
            Wordcount wc = new Wordcount();
            while (true)
            {
                Console.WriteLine("--------------------------");
                Console.WriteLine("输入命令:");


                string str = Console.ReadLine();


                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start(); // 开始监视代码运行时间

                

                wc.ExecutiveCommand(str);

                stopwatch.Stop(); // 停止监视
                TimeSpan timespan = stopwatch.Elapsed; // 获取当前实例测量得出的总时间
                string hours = timespan.TotalHours.ToString("#0.00000000 "); // 总小时
                string minutes = timespan.TotalMinutes.ToString("#0.00000000 "); // 总分钟
                string seconds = timespan.TotalSeconds.ToString("#0.00000000 "); // 总秒数
                string milliseconds = timespan.TotalMilliseconds.ToString("#0.00000000 "); // 总毫秒数
                Console.Write("运行时间  "+timespan);

            }
        }

    }
}

主函数,性能测试
主函数+性能测试
using System;
using System.Diagnostics;



namespace WordCount
{
    class program
    {
        static void Main(string[] args)
        {
            Console.Write("wc.exe -c file.c\t返回文件 file.c 的字符数\n" +
                          "wc.exe -w file.c\t返回文件 file.c 的单词总数\n" +
                          "wc.exe -l file.c\t返回文件 file.c 的总行数\n" +
                          "wc.exe -a file.c\t返回更复杂的数据(代码行/空行/注释行)\n" +
                          "wc.exe -o output.txt\t将结果输出到指定文件output.txt\n" +
                          "wc.exe -e stopList.txt\t停用词表,统计文件单词总数时,不统计该表中的单词\n" +
                          "wc.exe -s\t循环执行所有.c文件\n");
            Wordcount wc = new Wordcount();
            while (true)
            {
                Console.WriteLine("--------------------------");
                Console.WriteLine("输入命令:");


                string str = Console.ReadLine();


                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start(); // 开始监视代码运行时间

                

                wc.ExecutiveCommand(str);

                stopwatch.Stop(); // 停止监视
                TimeSpan timespan = stopwatch.Elapsed; // 获取当前实例测量得出的总时间
                string hours = timespan.TotalHours.ToString("#0.00000000 "); // 总小时
                string minutes = timespan.TotalMinutes.ToString("#0.00000000 "); // 总分钟
                string seconds = timespan.TotalSeconds.ToString("#0.00000000 "); // 总秒数
                string milliseconds = timespan.TotalMilliseconds.ToString("#0.00000000 "); // 总毫秒数
                Console.Write("运行时间  "+timespan);

            }
        }

    }
}

主函数,性能测试
功能代码

三、基本功能与扩展功能的测试:

1.数字、单词、标点符号测试正常

 

 

 

 

 

2.运算符、空行测试,发现空行算作了一个单词

 

扩展功能,测试正常

四、性能测试

  

通过显示后台运行时间发现单一命令的执行逐渐加快 ,三条命令同时执行的时间也远小于分别执行的时间相加。于是在命令执行的基础上加上文本的输出,发现文本写入用时最多。

 

再经过两次测试发现程序有后台存储功能,记录了运行的信息,第二次运行时读取了运行过的结果,所以时间加快了很多。

 

4.总结

(1)代码合并阶段:以前并没有将两个人的代码和在一起,这次发现函数命名没有一致,需要修改,其实应该先确定函数命名再开始编码。

(2)体会和感想:高级功能没有实现,在时间上还是仓促了。这次合作没有很好的计划,浪费了很多时间,这次的经验使得下次有了更多的准备。

posted @ 2018-10-21 22:57  K_wang  阅读(152)  评论(0编辑  收藏  举报