个人开发总结
# 个人开发总结
任何问题,都要去追根溯源,要知道这个问题是真正出自哪一块知识点,要真正去理解。光靠背诵是没用的
# 学习源码的意义
学习如何实现功能(招式)
学习设计思路(心法)
阅读源码的目的无非两个:
深入了解和理解他或一些底层的原理
从中学到一些优秀的设计思想和实践。
# 重要!!!
- 数据库定时备份(Windows 定时任务)
特别是团队共用的数据库,容易被不小心删掉,需要定时备份
- 代码每天提交
每天下班前提交代码,重要功能提交代码(避免电脑磁盘出现故障导致工期延期)
- git 权限和数据库权限把控
防止删库跑路现象及删代码库现象
# 团队领导素质
- 需求分析
项目周期预估,excel 表(一般需要在时间周期加预加两天)
- 质量把控
1.每日晨会,汇报当前进度,昨日任务完成情况及今日任务 2.项目风险点抛出,项目组内协作讨论 3.每日进度记录,及项目是否按预期完成,后期需求或优化记录
- 项目代码
1.每个项目务必完善各自 README.md:项目运行教程,项目重要功能备注 2.每个项目务必完善各自 tree.md:目录结构解析 3.每个项目务必完善各自 CHANGELOG.md: git commit 记录
代码 review(特别是发版之前,所有的 commit 点 review)
代码质量把关,当成产品来做
异常考虑,大数据量测试,压力测试,安全测试
数据库吞吐量
框架选择,是否团队维护,更新迭代
项目开发结束
1.每个项目迭代版本数据库脚本备份,xxx_v1.0(2020-06-11).xlsx
2.每个项目迭代版本代码备份,打 tag,做 release
3.每个项目迭代文档记录,文档命名:xxx_v1.0(2020-06-11).xlsx,迭代功能点专门记录
开发文档
1.记录 code review
2.记录关键技术问题及解决办法
3.定义代码规范,git 分支管理规范
4.定义发版规范
5.记录各个项目资料,数据库脚本及迭代功能点等等
- 客户需求(why.what,how)
分析客户原始需求 - 可行性分析,人力成本 分析提案 委托开发
# 发版准备
1.数据库 sql 建表建库脚本,数据脚本(mongodb,redis 需要加上建立用户名密码脚本)
2.检查事项
- 环境变量配置
- 加解密测试
- 本地打包测试
- 源码避免暴露,sourceMap
- 删除 console
- Jenkinsfile 配置检查,
- Docker 配置检查
- 分支代码合并(需要 review 检查每个 commit 点的代码)