第三次作业——计划书导入功能的实现
学号:031301135
搭档:031302103
一. 功能分析
本次的结对作业中,我们需要完成的是选课APP里的一个功能——开课计划书的导入和显示。这需要我们首先要将初始的排课excel空表导入系统,然后再将其展现在我们设计的原型里。
这个功能其实分为两步:
- 将初始排课表导入系统数据库;
2.将系统数据库的排课数据 显示在 web或APP的界面里
该功能其实就是实现原型设计时所设想的消息推送和开课计划书的自动导入。导入的时候首先要访问教务处信息,系统将根据登录信息的不同导入不同学院的开课计划书,完成消息的正确推送。
二. 实现思路
1.登陆界面实现;
1.1按钮创建;
1.2监听事件创建;
1.3模拟实现;
2.Excel空表导入数据库;
3.APP访问系统数据库;
4.将数据库信息按需求展示。
4.1普通教师界面只显示本学院选课计划书;
4.2管理员界面应显示所有学院的计划书。
三. 数据库设计
从整个软件来说,首先需要设计一张与EXCEL表属性完全一致的数据库,还需要一张记录用户信息的表。
四. PSP表格
五. 源码链接
031301135: https://github.com/zzzzqh
项目名:coursemanagement-1,共修改四次,
第一次:powerdesginer数据库脚本;
第二次:登陆界面初始效果项目;
第三次:选课界面项目;
第四次:选课项目完善。
六. 结对过程
由于上一篇随笔设计界面看起来更像是WEB的项目,并且我们两个人之前没有接触过任何安卓和Web的工程,我们在这个阶段分别对安卓和WEB进行了探索性学习。
首先我们找了一个经历过web项目制作的同学来面对面教导我们用myeclipse制作本次作业,由于他精通WEB,在他的指导下我们很快完成了一个简易界面和数据库的连接,并对一些关键的要点进行询问和分析理解,但感觉对WEB的知识掌握的太过散乱,有时间还是得好好系统的学习一下。
至于安卓的制作,我们完全是自己找教程学习,觉得哪些控件模块在本次作业用的到,就观看并学习。没有一个从事过安卓的人来指导我们,学习起来还是缺乏一些方向性的。有些时候还会遇到一些不懂怎么描述的问题,比如怎么在用户界面显示数据库的数据,这个问题在百度上是无法搜到答案的,后来咨询了其他人才知道要完成这个任务首先必需学会listview,再运用simpleadapter或者Arrayadapter,但是这个知识明白的太迟,在截止日期的最后一天下午才知道这个可以运用这个控件。
最终我们还是决定今后的项目都采用安卓平台来完成。
本次作业我们除了一起学习了WEB,都各自在自己宿舍编程,通过QQ互相沟通,利用QQ github等工具进行代码的传递。花了我们大量的时间。
这是在交换代码的过程中遇到的问题进行的讨论。
Web的效果图:
点击开始选课:
安卓的效果图:
点击开始选课触发监听事件:
(这个界面还没设计好,只能暂时显示这些文字,因为listview的使用遇到了一些问题)
七. 结对心得
在第三次结对编程任务期间,作为一个以前对android项目开发一无所知的菜鸟,为了不拖队友的后腿,也为了做出自己想要的效果,我恶补了很多关于安卓项目开发的基本知识。边看教程,边自己动手写,没学过java,就靠着自学的一点知识然后跟着视频写代码,有时候完全不知所云。就在这种状态下,手忙脚乱的也还是写出了一点点小项目。
由于都是新手,上手速度略慢,队友很体谅也很耐心,让我不用太着急,慢慢来。学习的过程中碰壁过很多次,调试了很多bug,虚拟机跑不起来就换真机调试,最终还是学会了textview,imagview控件的使用,对Listview的理解还是不够彻底。
为了这俩次的结对编程,熬夜看视频,翘课被点名,但是确实学到了挺多知识。在安卓开发的路上我还有很长一段预热道路要走。希望在接下来的学习和实践中,我能学到更多知识和编程思想,最终实现APP吧。
CV小蜡肉