开发流程介绍
- 产品⼈员进⾏原型设计, 提出开发需求
- 产品需求讨论会
- 设计⼈员进⾏ UI、原画等绘制⼯作
- 前端⼈员接收各种图形元素
- 前后端⼈员对接接⼝, 并编写接⼝⽂档
- 前后端同时开始开发
- 前后端联合调试
- 测试⼈员测试
- 上线部署、服务重启
- 新版本发布上线
产品需求讨论会。会有四个象限,
一个星期会发布一个迭代。一个核心的内容,经常讨论需求,然后迭代。淘宝开发了20年还每天有一些新的需求。
第5步:前端人员和后端人员做一个对接:
前后端分离。例如饿了么快递小哥的位置,传给的是实时经纬度,到用户那里是小地图。接口对接。编写接口文档。
之后前后端才开始开发。
然后开始联调,联合调试。能够跑起来。
然后交给测试人员测试。增加一个苛刻的条件测试。
然后上线部署,服务重启
新版本发布上线。
版本控制及代码管理
分⽀类型
- master: 主⼲分⽀, 代码经过严格测试, 最稳定, 可以随时上线
- develop: 开发者分⽀, 合并了各个开发者最新完成的功能, 经过了初步测试, 没有明显BUG
git checkout -b develop 创建分支 ,master下面创建分支。
或者 git branch user 创建分支
-
feature: 功能分⽀, 开发中的状态, 代码最不稳定, 开发完成后需要合并到 develop 分 ⽀
Pull Request: 拉去请求
开发者⾃⼰提交 Pull Request 通知团队成员来合并⾃⼰提交的代码。
通过此⽅式可以将合并过程暴露给团队成员, 让代码在合并之前可以被团队其他成员审核, 保证代码质量。
Code Review: 代码审核
代码逻辑问题
算法问题
错误的使⽤⽅式
代码⻛格及规范化问题,python统一标准pep8规范
学习其他⼈的优秀代码如果代码实在没法维护,就只能重构,非常痛苦。
审核者,2个√后提交,让同事打分。
develop,功能分支可以删除,主分支不要删除。
git log --graph
服务器环境:
生产环境:线上的正式服务器,运行的必须是master里的代码。
测试环境:测试服务器,可以 运行master,develop 分支的代码
开发环境 :开发者自己的电脑,可以运行任何分支的代码。
zsh 或者oh-my-zsh 命令补全功能
bash功能
git for windows
知识回顾:
100系列 post 分两段,先发header,返回100状态吗,然后继续发送。
200成功
300重定向 ,301永久重定向,302临时跳转,例如jingdong.com转jd.com 是301。重定向原理,客户端响应第一次请求,然后发第二次请求。
400 服务器拒绝,请求错误,403请求被拒绝,404页面没找到。
500 服务器错误。502网关错误,nginx出现,反向代理服务器。503服务器过载,
队列: 生活中:各种排队的地方。先进先出
程序里:消息队列,任务队列。
scrapy中调度器里就是队列,任务队列。
多线程操作,queue
栈:后进先出 , 生活中:弹夹。
程序里:app或者浏览器的前进后退功能。函数的调用。
a(b(c(d)))