二维码拍照系统总方向

in this article:

系统目标

实现一个能够给博物馆使用的二维码系统。在博物馆的专栏品前方会有我们的二维码,游客、摄影师扫码后可以观看别人拍摄的关于此展品的照片,同时可以上传自己拍摄的关于此展品的照片,这样能够让使用者分享一个展品的不同时间、不同角度的样貌。

分工

根据系统目标,可见系统需要分为三个部分:

  • web后端
  • windows程序
  • 前端

经统计人员意向,现分配人员如下:

  • web后端:李博修
  • windows程序:刘俊,蔡子安
  • 前端:邓晨啸,邓子怡

技术细节

后端

后端技术采用Asp .Net Core Api,数据接口用json,数据库使用开源的mongodb。身份认证系统拟采用简单cookie,后期课强化为identity server。图床后期使用七牛的云服务进行储存,不直接存于云服务器上。

windows

界面部分采用wpf技术,需要了解xaml和c#语言。服务进程需要写一个windows服务,也是c#语言。

前端

考虑到前端是两个新手,直接上微信小程序有诸多不便,且微信小程序只需要实现二维码扫描预览功能。第一阶段目标拟改为制作网站,要求能够设计出在浏览器扫描二维码之后显示图片的页面。

总架构

使用UML进行描述:

[linux服务器|
[asp后端]<->数据[mongodb]
[nginx]<->反向代理[asp后端]
]
[linux服务器]<-token[七牛云服务]
[前端]使用token上传/删除图片->[七牛云服务]
[前端]<-token[linux服务器]
[前端]<->获取图片地址[linux服务器]
[前端]<-请求图片[七牛云服务]

开发规范

源代码管理拟使用私人的gitlab,方便进行权限的管理。考虑到大部分成员是第一次进行合作,我们在此约定一下合作规范:

  • master分支只在new feature稳定后由我进行更新,我将取消其他人更改master分支的权限。
  • 所有人都要有一个专属于自己的开发分支,平时只在自己的分支上进行开发。
  • 我会创立一个特殊分支叫做dev分支,每天我会把所有人的分支合并到dev一次
  • 在熟练掌握git之前禁止私自对dev以外的分支进行merge,如果进行了,出现了conflict,立马在群里向其它所有人汇报,一起讨论代码合并方式。
  • 每天开始开发前,先自行合并dev分支,以获取他人的更改
  • 非特殊情况,尽量不要两人同时编辑同一个代码文件(防止出现merge conflict)
  • 之后我会出spring1设计,约定前后端接口,届时大家可以对设计进行讨论,但是最好不要在未讨论的情况下私自修改设计。

本文章使用limfx的vsocde插件快速发布