hugo/content/post/038.「项目实战」基于uni-app和Python-flask的校园微信小程序-01.简介/「项目实战」基于uni-app和Python-flask的校园微信小程序-01.简介.md
2021-12-12 17:46:25 +00:00

36 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: "「项目实战」基于uni-app和Python flask的校园微信小程序 01.简介"
categories: [ "程序人生","商业项目" ]
tags: [ ]
draft: false
slug: "yiyu-intro"
date: "2021-03-13 12:13:00"
---
团队刚刚成立之初,就接到了一个小项目,甲方要求是制作一个微信小程序,给出了各个模块的介绍,然后由我们自由发挥,只要最后交付时满意就行。
介于甲方隐私,小程序名字暂时隐藏
校园小程序说多不多说少也不少现在很多学校都用上了各种各样的便捷小程序有些学校还开发了APP大部分的小程序功能都集成了这些功能`校园外卖` `快递代拿` `课表浏览` `微型教务`等。
**本系列文章为介绍小程序的架构及设计逻辑是我们的第一个商业项目难免会有各种疏漏还请各位大佬见谅。另外考虑到客户隐私问题就不在此放出部分UI截图或代码。**
#### 框架
我们接到这个项目之后,就开始了技术栈的选择,因为是第一次接商业项目,光经验就不谈,技术栈的选择尤为关键,若选择了较为复杂的解决方案,开发周期就会大大加长,到不了甲方的约定交付周期就违约了。在综合考虑之下,因为小程序的体量不大,功能相对来说比较好做,在前端方面不使用原生开发,而是使用`uni-app`这套跨平台的UI库好处就是开发模式与Vue写web前端十分相似开发逻辑上也是mvvm和声明式绑定因为这个库就是用vue做的前端框架。uni-app完成开发后可以直接打包到H5, iOS, Android, 微信小程序, 支付宝小程序等一系列内置了小程序的平台。
后端的开发用spring感觉没有必要毕竟是一个简单的小项目想起来python对于简单的webapp开发也是十分便捷然后考虑到交付周期的问题最后选择了flask作为后端框架进行开发优点是开发极其便捷路由管理也十分方便。还有就是因为有课表模块课表又是从学校的教务系统上爬取的自然肯定是选择python语言兼顾了web api和爬虫。
后端数据库用的是mysql 5.7版本这里会遇到一个小问题就是在获取到用户名之后要存储到数据库因为部分用户的微信昵称是带有emoji的直接用mysql默认编码存不进会报错因为mysql是四字节编码所以在建库和建表时要将排序规则改为`utf8mb4_unicode_ci`
#### 模块
这一次我们开发的校园小程序,从大体模块上分为以下几个
- 课表浏览
- 快递代拿
- 文件代打印
- 课表提醒
- 个人中心
- 地址管理
- 个人信息管理
下一篇文章将介绍本项目的前端技术