结对项目-地铁出行路线规划程序(续)

结对人员:杨金键 谢振威 金豪(顺序无特殊含义,仅因照片从左到右这个顺序)

结对编程优点:及时发现bug,纠正编程习惯,及时纠正可能带来问题的编程思路

缺点:效率太低,时间开销大。

个人优点:

  金豪:积极主动,想法灵活,认真学习

  谢振威:刻苦努力,代码质量高bug较少,认真负责

  杨金键:认真刻苦,勤于实践,思路明了

个人缺点:

  金豪:遇到奇怪问题。。

  谢振威:闷声发大财

  杨金键:眼高手低,当修复bug的时候经常改这里忘了那里,导致产生新的bug。。动手能力还是太差了。

设计方法:

  在动手写代码之前先进行周密的设计,包括各个模块的功能,模块之间的具体接口。关键在于接口,队员之间一定要协商好后行动,不然在后续编程中容易产生各式各样的bug。同时模块内部的属性应当不能由其他模块直接访问,即应当通过get/set方法(如需要被访问)才能被其他模块进行访问。同时当两个模块由不同的人写的时候,这个时候我们可以预先写好一个中间层,然后依据中间层各自进行各自的设计确保和中间层的链接。

契约式设计:

  最初是被Bertrand Meyer在设计他的Eiffel语言时所创造的概念,并且在1986年开始逐渐被各式各样的论文引用。用文档来记载权利和义务的说明并用程序来检验,这就是契约式设计的核心。契约式设计其之所以得到了人们的重视,因为它将责任的分工明确化。当一段代码发生异常时,我们过去的思想总会模糊的认为,是否是这段代码本身存在错误?而程序的规格化设计明确地告诉了我们这一错误的责任到底在于用户还是设计者。在面向对象技术中,接口是我们在面向对象中需要关心的东西,可是只有借口这却还不够充分,我们究竟如何才能正确的使用接口,而这恰恰是契约式设计所提供的部分。只有考虑到了规格,才可能实现面向对象的目标:可靠性,可扩展性,和可复用性。

UML图:

  

算法关键:

  算法关键与上次的完全相同,图形界面并未用到任何高深算法,都是简单的拼接,地图计算采用了迪杰斯特拉算法,其他也并没有什么了

附加题:

  http://www.cnblogs.com/thereisnoname/p/5928416.html

时间: 2024-10-21 06:12:18

结对项目-地铁出行路线规划程序(续)的相关文章

结对项目-地铁出行路线规划程序

1 本程序由14061041谷大鑫和14061035崔正龙共同编写. github项目网址:https://github.com/nrm1/subway_GUI 注:由于之前github管理的问题,我与崔正龙同学的代码均为手动合并,初步完成后才由我上传,因此github上提交记录次数较少,而且全由我提交,提交时间也比较晚,但实际上我们从一接收到题目就开始编写题目了. 本程序使用方法: subway_GUI.exe (输入线路名则输出整个线路站名) subway_GUI.exe -b 知春路 北京

结对项目—地铁出行路线规划

结对项目—地铁出行路线规划 我的搭档:陈鸿超 14061216 https://github.com/ChengFR/PairProgramming_SubwayRoute- 会在十一期间发布新版本 结对编程体会: 结对编程的优点: 站在软件开发的角度,两个人共同面对同一台电脑进行开发,无论是效率还是软件质量都要超过一个人进行开发的情况. 对于还处于学习阶段的年轻软件开发者来说,结对编程是一个很好的互相学习的机会 结对编程时动力.责任感更强 结对编程的缺点: 对于我们来说,寻找两个人共同的时间进

软件工程个人项目-地铁出行路线规划程序

项目前时间预测(非附加要求): PSP 2.1 Personal Software Process Stages Time Planning 计划 · Estimate · 估计这个任务需要多少时间 6.5h Development 开发 · Analysis · 需求分析 (包括学习新技术) 20min · Design Spec · 生成设计文档 - · Design Review · 设计复审 (和同事审核设计文档) - · Coding Standard · 代码规范 (为目前的开发制定

个人项目-地铁出行路线规划程序

PSP 2.1 Personal Software Process Stages Time Planning 计划 · Estimate · 估计这个任务需要多少时间 1day Development 开发 · Analysis · 需求分析 (包括学习新技术) 10min · Design Spec · 生成设计文档 1min · Design Review · 设计复审 (和同事审核设计文档) 1min · Coding Standard · 代码规范 (为目前的开发制定合适的规范) 1mi

【软工个人项目-地铁出行路线规划程序】

---恢复内容开始--- 1.源代码地址:https://github.com/qiao1406/BeijingSubway 2.使用的语言:C++ 编程环境:Visual Studio 2015/Windows 8 64-bit 虚拟机(ps:自己的电脑上死活装不成功世界上最好的IDE,只好装在虚拟机上了 3.PSP表格-计划时间与实际花费时间 3.测试样例 具体详见GitHub,这里贴几个帮助我改正了bug的样例 3.1 -b 苹果园 土桥 1号线和八通线的换乘模式是[双换乘]即:四惠和四惠

地铁出行路线规划程序

工程:实现一个帮助进行地铁出行路线规划的命令行程序. 使用PSP表格记录预估将在程序的各个模块的开发上耗费的时间. PSP 2.1 Personal Software Process Stages Time Planning 计划 · Estimate · 估计这个任务需要多少时间 10h Development 开发 · Analysis · 需求分析 (包括学习新技术) 30min · Design Spec · 生成设计文档 无 · Design Review · 设计复审 (和同事审核设

个人项目-地铁出行路线

---恢复内容开始--- 地铁出行路线 https://github.com/ChengFR/PersonalProgram_SubwayRoute 时间预期 PSP 2.1 Personal Software Process Stages Time Planning 计划 · Estimate · 估计这个任务需要多少时间 Development 开发 · Analysis · 需求分析 (包括学习新技术) 3h · Design Spec · 生成设计文档 1h · Design Revie

个人项目-地铁出行线路规划程序

PSP表格 PSP 2.1 Personal Software Process Stages Planning Time(H) Used Time(H) Planning 计划 0.5 0.25 · Estimate · 估计这个任务需要多少时间 0.5 0.25 Development 开发 25.5 45.9 · Analysis · 需求分析 (包括学习新技术) 10 13 · Design Spec · 生成设计文档 2 3 · Design Review · 设计复审 (和同事审核设计

个人项目-地铁出行路线规划的简要分析

guthub repositories 个人博客园主页 支持环境: windows7,10,macOS,Linux 需求分析: 读取自定义地铁文件: 程序需要能够成功地解析并载入不同的地铁系统,实现数据与程序的解耦 查看地铁线路: 实现地铁系统的详情查询操作 最短线路: 帮助用户推算出最优乘坐路线 实现思路: 所有数据文件都采用.csv的格式储存 站点名称, 所属线路及坐标, 是否开通 刘园, (1号线,0), 是 西横堤, (1号线,1), 是 果酒厂, (1号线,2), 是 西站, (2号线