第02组团队Git现场编程实战
GitHub仓库地址
1.组员职责分工
组员 | 职责分工 |
---|---|
黄智、赵镇 | 百度地图API使用 |
潘松波、颜志鹏 | 写分别测评福州人均消费50以下,50-100、100-200、200以上最佳(性价比最高)的前五家美食餐厅(参考评价与价格)函数代码部分 |
翁正凯、张诗栋、林逸 | 写测评福州最佳美食聚集地函数代码部分 |
吴长星 | 写测评福州服饰类综合评分最高的商圈函数代码部分 |
叶梦晴 | 基本数据可视化,UI界面 |
吴超望 | 写测评福州最受欢迎的商圈(参考人气)函数代码部分 |
2.github 的提交日志截图
截图如下:
3.程序运行环境
- 语言:python
- 操作系统:Windows
- 工具:Pycharm、VScode
4.GUI界面
-
Menu
-
最受欢迎的商圈:宝龙城市广场
-
各价格段前五家美食餐厅
-
最佳美食聚集地:西湖公园
-
服饰类综合评分最高的商圈:庆帅服饰
5.基础功能实现
- 百度地图API使用
我们用的是地点检索服务,根据api的文档,找到所需的参数,用get请求去访问,将返回的结果转换成字典格式,之后根据具体所需的信息从字典中提取。 - 基本数据可视化,UI界面
页面使用的是html+css+js制作的,组件后来想到了引用库就用了layUI,可视化表数据使用了Echarts。 - 分别测评出福州人均消费50以下,50-100、100-200、200以上最佳(性价比最高)的前五家美食餐厅
对API返回的json进行解析,利用price键值分出四个价格区间,在每个区间对overall_rating键值进行比较,用插入排序将评分前五的店铺信息保存到列表中。 - 测评出福州服饰类综合评分最高的商圈
将API获取到数据读出来后存到一个txt里面,接口的数据通过该txt获取。通过文件读操作,一行行的读,然后再用split()函数分解出店名和综合评分,用两个变量存评分最高的店名和评分,遍历完就出结果了。 - 测评出福州最佳美食聚集地
先调用百度api获得福州所有商圈名字和经纬度,再用得到的商圈经纬度依次查询每个商圈周围的美食店个数,个数最多的即为最佳美食聚集地了。
6.鼓励有想法且有用的功能
通过评测结果,我们可以做一些推荐,比如推荐大家去一些好的美食聚集地,繁华的商圈。避免踩雷,获得比较好的体验。
7.遇到的困难及解决方法
组员 | 遇到困难 | 解决方法 |
---|---|---|
黄智 | 没仔细理解组员的思路,代码改了很长时间 | 冷静下来,理解代码逻辑 |
赵镇 | 由于api用的比较少,一开始一脸懵。python用的不熟练,bug找半天 | 组长带一手,api讨论着就出来了。bug后面疯狂调试终于发现了 |
吴超望 | 由于爬虫出来的数据层层嵌套,而且数据完整性不够会导致key错误 | 对数据进行了层层分析提取,并在队友的帮助下解决数据不完整性 |
潘松波 | 由于对python编程语言的不熟练,导致手法生疏、进程缓慢,再加上前一晚没睡好导致头脑昏昏沉沉,因此拖延了一些时间,感到非常抱歉 | 求助队友,在队友的帮助下找出了很多低级的错误,成功debug,团结就是力量! |
颜志鹏 | 数据不够了解,比如不知道数据可能缺失,必须要用try特判,还有Python语法不够熟练,限时编程代码花式错误 | 摸着石头过河,边做边学,队友给力 |
叶梦晴 | 写前端页面的时候下意识又开始造轮子,很多组件样式实在好麻烦实在不想再写了,然后可视化表格也比较烦 | 组件后来想到了引用库就用了layUI,可视化表数据就学了好一下Echarts |
翁正凯 | 最佳美食聚集地不知道以什么方式去挑选 | 与队友一同讨论,衡量可行性,最后确定下来标准,完成代码 |
张诗栋 | 最佳美食聚集地的评测不知道以什么标准 | 通过讨论,确定方法,最后写代码 |
林逸 | 没仔细看api,对数据的结构不清楚,沟通花了很长时间 | 通过讨论,确定方法,最后写代码 |
8.马后炮
-
黄智:如果当时冷静分析,那么就不用改那么久了
-
赵镇:如果python用的跟c++一样的话,那么就不至于那么疲惫了
-
吴超望:如果我能学的更好那么我就能更快写完
-
潘松波:如果我像队友一样强,那么就不会耽误进度了
-
颜志鹏:如果我会的更多些,那么该多好啊
-
翁正凯:如果事先多学习一下相关的知识,编程时就不会这么迷茫了。
-
张诗栋:如果以前认真一点,就不会流下不学无术的泪水了
-
林逸:如果我仔细看下api,就不用讨论那么久了
-
吴长星:如果早知道有fastjson这么便利的东西,那么我就不用写那么久了
-
叶梦晴:如果早再多努力多学学,那么现在还会这么菜吗?也不好说。
9.评估每位组员的贡献比例
组员 | 贡献比(%) |
---|---|
黄智 | 10 |
赵镇 | 10 |
吴超望 | 10 |
潘松波 | 10 |
颜志鹏 | 10 |
翁正凯 | 10 |
张诗栋 | 10 |
林逸 | 10 |
叶梦晴 | 10 |
吴长星 | 10 |
林闽沪 | 0(请假) |
10.PSP表格
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | 30 | 20 |
Estimate | 估计这个任务需要多少时间 | 160 | 180 |
Development | 开发 | 0 | 0 |
Analysis | 需求分析 (包括学习新技术) | 0 | 0 |
Design Spec | 生成设计文档 | 0 | 0 |
Design Review | 设计复审 | 0 | 0 |
Coding Standard | 代码规范 | 0 | 0 |
Design | 具体设计 | 0 | 0 |
Coding | 具体编码 | 150 | 170 |
Code Review | 代码复审 | 0 | 10 |
Test | 测试 | 10 | 10 |
Reporting | 报告 | 5 | 5 |
Test Repor | 测试报告 | 0 | 0 |
Test Repor | 计算工作量 | 5 | 5 |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 20 | 30 |
合计 | 195 | 205 |
11.学习进度条
第N周 | 新增代码 | 累计代码(行) | 本周学习耗时(小时) | 累计学习耗时(小时) | 重要成长 |
---|---|---|---|---|---|
1 | 0 | 0 | 12 | 12 | 熟悉Axure软件,学会原型设计 |
2 | 600 | 600 | 26 | 38 | 学会了TKINTER库,学会了用网络接口 |
3 | 100 | 700 | 4 | 42 | 进一步熟悉python与API |