zoukankan      html  css  js  c++  java
  • 五月团队项目收获

    我们的团队项目是U-Help快递代领app,前期一直在做调研和计划,直到5月才开始写具体的代码。五月我们主要完成的是登录和注册界面的编写,万事开头难,登录和注册都涉及到界面设计、事件响应、界面切换以及前后端通信,看似简单的一张界面以及涉及到了本项目中大部分技术框架,所以这部分的工作对于技术框架的学习与掌握有极大的收获。

    界面设计方面我们一开始采用的方法是人工写xml文件的方式,后来发现远不如拖动控件的自动设计方式高效,但拖动控件生成的界面在虚拟机上运行时会乱成一团,后来发现需要把constraint layout改为relative layout才行。事件响应和界面切换都使用的是安卓原生功能,真正复杂的是前后端通信。

    为了实现注册、登录功能,需要在使用服务器上的数据库,于是我在服务器上安装了mysql server,并将服务器端脚本确定为python flask框架。flask框架十分简洁,能够将客户端请求分配至不同路由,即根据不同客户端请求执行相应函数,登陆注册界面需要分别编写login和register函数。需要注意的是,flask设置的host和port参数分别是指监听的ip范围和自己的服务端口,所以host应该设为0.0.0.0以监听所有ip地址。

    为了操纵数据库,使用了mysql.connector框架,这是python访问mysql数据库的一种常用框架,使用方法简洁,通过sql语句字符串作为参数提供给相应函数,对应的命令便会执行。在做插入操作的时候,sql语句需要其他参数,这时需要在sql字符串中用'%s'来表示参数(‘ ’不可省略),然后在字符串后用%(参数)来传参。其中还有一些坑,最好的解决方式是遵守http协议和看别人的博客。

    最后是安卓端访问服务器的框架,采用了okhttp3,并与服务器端约定使用json传递数据(post方式),将用户登录或注册的信息存为json格式并发送给服务器端,然后在安卓端使用异步处理方式定义响应函数,由此完成前后端交互。okhttp3的坑很多,很容易出现各种问题,有时到了最后交互时没有任何问题但就是连不上服务器,很可能是okhttp3的两个依赖关系不匹配,此时看看别人博客里添加的两个依赖关系的版本都是什么,不要从不同的博客里分别选取包的版本。

    以上是技术框架上的收获,这为团队项目的开展奠定了基础。而在代码管理方面,我花了不少时间彻底掌握了github的使用方式,大家统一使用git来个管理代码(github上添加了ssh),每个人在github上都有各自的分支防止污染代码,并定下了合并代码的准则以减少合并冲突。

    至于团队合作方面,由于大二的同学忙于考试,大三的同学忙于暑研准备,时间安排上很难一致,所以容易出现一方进度拉下的情况,如何协调大家的时间使得写代码的效率很高是一个需要解决的问题。

  • 相关阅读:
    HDU 5938 Four Operations 【贪心】(2016年中国大学生程序设计竞赛(杭州))
    HDU 5935 Car 【模拟】 (2016年中国大学生程序设计竞赛(杭州))
    HDU 5934 Bomb 【图论缩点】(2016年中国大学生程序设计竞赛(杭州))
    HDU 5933 ArcSoft's Office Rearrangement 【模拟】(2016年中国大学生程序设计竞赛(杭州))
    HDU 5929 Basic Data Structure 【模拟】 (2016CCPC东北地区大学生程序设计竞赛)
    【转】LaTeX 符号命令大全
    HDU 5922 Minimum’s Revenge 【模拟】 (2016CCPC东北地区大学生程序设计竞赛)
    HDU 5927 Auxiliary Set 【DFS+树】(2016CCPC东北地区大学生程序设计竞赛)
    数据结构之稀疏矩阵
    C++中引用(&)的用法和应用实例
  • 原文地址:https://www.cnblogs.com/tilmto-Jerry/p/9119923.html
Copyright © 2011-2022 走看看