整个开发流程:
- 产品经理 整理需求
- 产品原型 - 粗糙的界面 (Axture 原型软件)
- 一起过产品原型 - 项目小组 (产品经理、开发人员、UI设计师)
- 讨论出优先级、按照迭代周期确定版本计划 - Planning
- UI、开发 各自详细研究文档
- 后台开发和前端开发一起讨论接口 - 定义request参数和response响应结构
- 前端开发 - js + html + css -> vue.js/react.js(响应式编程)
- java - spring boot主流(spring系列), python - Django(臃肿,小团队很少用),Flask主流,tornado(facebook)异步IO,高并发
- 前后端各自开发,开发完然后对接
- 自测对接完成后,提测(测试人员去做测试)测试人员写测试用例
- dev环境、test内测环境、uat预发布环境、prod正式环境
技术:
python web框架 - Flask
db - mysql主数据库
缓存 - 内存db - redis
前端 - vue.js
读数据:
redis - db
写:
db - redis
通信接口数据类型:json(类似Python中的字典结构)
关于Python的多线程问题:
python有个全局锁,多线程并非真并发 - 最好是用多进程 + 异步IO
java是真正的多线程模型 - 共享内存、死锁问题
flask学习文档:
https://dormousehole.readthedocs.io/en/latest/
软件开发项目学习网站:
https://github.com/Snailclimb/JavaGuide
http://www.lumajia.com/htmls/1215943114038969350.html