zoukankan      html  css  js  c++  java
  • 第一个项目

    设计思路:

    1、需求分析: cmd命令行获取参数、使用Floyd算法来计算两站之间的最短距离。

    2、开发平台:idea

    3、计算模块接口的设计与实现过程。设计包括代码如何组织,比如会有几个类,几个函数,他们之间关系如何,关键函数是否需要画出流程图?说明你的算法的关键(不必列出源代码),以及独到之处:

    Node类:获取节点类的信息

    Path类:路径类,计算两点间的距离

    Distance类:缓存a节点和b节点之间的距离

    EasyCache类:中间缓存类

    subway类:

    readStation (String)方法用于读取subway.txt

    getPath(String ,String,String)方法:打印输出2站间的最短距离

    getXianLu(String,String)方法:获取某个地铁线路

    Data类:

    Data构造函数:通过subway类返回的createArray方法返回的二维数组的传递处理相邻两站isConnected的属性

    ComputeShort类:

    getShortDis用于计算两站间最短路径

    主要算法:

    Floyd算法描述:

    1、从任意一条单边路径开始。所有两点之间的距离是边的权,如果两点之间没有边相连,则权为无穷大,这也是所谓的初始化工作;

    2、对于每一对顶点 u 和 v,看看是否存在一个顶点 w 使得从 u 到 w 再到 v 比己知的路径更短。如果是更新它。

    具体要求如下:

    1. 在开始实现程序之前,构思整个程序所需要的模块,想清楚它们的依赖关系,以及估计开发需要的时间,使用下述PSP表格记录下来。
    2. 在你实现完程序之后,使用下述PSP表格记录下你在程序的各个模块上实际花费的时间
    3. 计算模块接口的设计与实现过程。 设计包括代码如何组织,比如会有几个类,几个函数,他们之间关系如何,关键函数是否需要画出流程图?说明你的算法的关键(不必列出源代码),以及独到之处
    4. 记录你在改进程序性能上花费了多少时间,描述你改进的思路,并展示一张性能分析的图(由VS 2019的性能分析工具自动生成),并展示你程序中消耗最大的函数。
    5. 计算模块部分单元测试展示。 展示出项目部分单元测试代码,并说明测试的函数,构造测试数据的思路。并将单元测试得到的测试覆盖率截图,发表在博客中。要求总体覆盖率到90%以上,否则单元测试部分视作无效。
    6. 计算模块部分异常处理说明。 在博客中详细介绍每种异常的设计目标。每种异常都要选择一个单元测试样例发布在博客中,并指明错误对应的场景。
    7. 共享你对程序进行测试的至少10个测试用例,以及说明为什么你能确定你的程序是正确的。
    8. 说明你在个人项目中学到了什么。
    PSP 2.1Personal Software Process StagesTime
    Planning 计划  
      · Estimate   · 估计这个任务需要多少时间 0.5h
    Development 开发  
      · Analysis   · 需求分析 (包括学习新技术)  20h
      · Design Spec   · 生成设计文档  3h
      · Design Review   · 设计复审 (和同事审核设计文档)  1h
      · Coding Standard   · 代码规范 (为目前的开发制定合适的规范)  1h
      · Design   · 具体设计  2h
      · Coding   · 具体编码  5h
      · Code Review   · 代码复审  1h
      · Test   · 测试(自我测试,修改代码,提交修改) 2h
    Reporting 报告  
      · Test Report   · 测试报告  3h
      · Size Measurement   · 计算工作量  1h
      · Postmortem & Process Improvement Plan   · 事后总结, 并提出过程改进计划  2h
      合计  41.5h
  • 相关阅读:
    Winform中在ZedGraph中最多可以添加多少条曲线(转)
    c#委托的含义和用法
    vs2010打开vs2017工程
    C# Socket编程资源
    C# 调用打印机 打印 Excel (转)
    NPOI 教程
    C# 调用C++ DLL 的类型转换(转载版)(转)
    进程间通信(网络阅读笔记)
    NPOI 第二篇 设置样式与合并单元格(转)
    分布式事务的 6 种解决方案,写得非常好!
  • 原文地址:https://www.cnblogs.com/softwarelong/p/11186858.html
Copyright © 2011-2022 走看看