zoukankan      html  css  js  c++  java
  • 个人项目-WC(Java实现)

    一、Github项目地址:

    https://github.com/kestrelcjx/-WC-Java-

    二、PSP表格

    PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 30 28
    Estimate 估计这个任务需要多少时间 10 11
    Development 开发 600 480
    Analysis 需求分析 120 150
    Design Spec 生成设计文档 30 60
    Design Review 设计复审 40 55
    Coding Standard 代码规范 20 40
    Design 具体设计 60 40
    Coding 具体编码 480 480
    Code Review 代码复审 30 20
    Test 测试(自我测试,修改代码,提交修改) 60 120
    Reporting 报告 60 120
    Test Report 测试报告 20 30
    Size Measurement 计算工作量 10 15
    Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 120 60
    合计 1690 1709

    三、解题思路

     使用Java语言设计三个模块,分别实现下列功能:

    1. 主类wc,在主类main方法中接受传入参数,并根据参数分类讨论,使用function类中各静态方法实现功能,或调用GUI类打开图形界面;
    2. GUI类,继承JFrame类,实现图形界面程序,通过按钮选择文件并调用function类中各静态方法统计信息;
    3. function类,在类中包含各静态方法,分别实现统计信息功能。
      流程图:

    四、设计实现

    1. 统计字符数
      通过逐个读取字符,统计字符数。
    2. 统计行数
      通过逐行读取字符串,统计行数。
    3. 统计单词数
      通过逐行读取字符串,再以空格分隔字符串,统计单词数。
    4. 统计空行数
      通过逐行读取字符串,判断是否为空字符串,统计空行。
    5. 统计注释数
      通过逐行读取字符串,判断以“//”开头的行或“/”至“/”的行数量。
    6. 统计代码行数
      总行数减去为注释行或空行的行数。
    7. 递归访问目录所有子文件夹,并记录文件路径
      如果readFiles方法的path参数为文件,记录文件路径;
      如果为文件夹,递归访问文件夹下所有文件和子文件夹。

    五、运行测试

     使用“手动测试,手工比较”方式。

    1. 测试空文件

    2. 测试一个字符的文件

    3. 测试一个词的文件

    4. 测试一行的文件

    5. 测试一个典型的源文件

    6. 测试GUI

    7. 代码覆盖率
      "-c -w -l -a -s C:UsersAdministratorDesktopTest*.cpp"命令:

    "-x"命令:

    六、项目总结

     由于学习了软件工程课程,了解在项目开发前期应做好需求分析和设计文档,所以仔细阅读了项目要求,并对开发流程有了清晰的思路,因此在整个开发过程中各阶段都比较顺利,这也让我了解了学习软件工程的意义所在。本次项目各功能其实并不难实现,主要将程序分成各模块实现,并协调好各模块之间的联系。WC项目开发,让我学到了软件工程知识在实际项目开发中的具体应用,也复习了Java编程知识。

  • 相关阅读:
    再谈应用程序单例运行(只能开启一个进程)
    wpf 无边框窗口 最大化,缩放问题修复
    AutoClose=false的情况下自动关闭下拉框(ToolStripHost)
    C#调用其他语言(如PB)的com组件
    再写Javascript闭包
    Vue 数据双向绑定的误区
    后台数据缓存的一点心得
    C# 使用 Newtonsoft.Json 对DataTable转换中文乱码问题的解决
    第二章 Background & Borders 之 Multiple borders
    第二章 Background & Borders 之 Transparent Border
  • 原文地址:https://www.cnblogs.com/Kestrel/p/11572979.html
Copyright © 2011-2022 走看看