技术

开发规范

协作流程

1.项目启动

  • MRD
  • 相关人员参加

2.需求阶段

  • 运营需求
  • 产品需求
  • PRD

3.设计阶段

  • 交互设计
  • 交互评审
  • 视觉设计
  • 视觉评审

4.研发阶段

  • 技术架构评审
  • 前、后端项目计划
  • 前、后端开发计划
  • 代码评审
  • 联调测试

5.项目交付

  • 发布计划评审
  • 部署上线
  • 回归测试

流程规范

1.规范之目的

  • 降低故障率
  • 提交协作效率
  • 工匠精神

2.配置规范

  • IDE(Eclipse/IDEA):P3C/eclipse-code-formatter
  • Maven:super pom/bom
  • Git:git忽略文件

3.命名规范

  • lowerCamelCase:方法名、参数名、成员变量、局部变化
  • UpperCamelCase:类、接口
  • 包、常量命名
  • 领域模型(DO/DTO/BO/VO)
  • 其他

4.API规范

  • RPC
  • REST
  • API GateWay
  • 版本管理
    • 兼容性
    • 版本号
  • 错误码
    • 定义:英文组合,“,”分隔
    • 区分可恢复与不可恢复
  • 安全
    • 用户鉴权
    • 数据脱敏
  • 幂等性
    • 防重
    • 幂等
  • 异常
    • 统一到错误码
    • 切勿透传、统一Result

5.异常处理规范

  • 直接返回
  • 抛出异常
  • 重试处理
  • 熔断处理
  • 降级处理

6.分支开发规范

  • 分支的定义
    • master、develop、release、hotfix、feature
  • 分支命名规范
  • checkout、merger request 流程
  • 提测流程
  • 上线流程
  • hotfix 流程

7.代码commit规范

  • Angular 的提交规范
  • Type: feat/ fix / docs / style / refactor /perf / test
  • Commitizen、 IDEA插件

8.日志规范

  • 日志框架
  • 日志保存时间
  • 日志级别- debug/info/warm/error
  • 日志描述上下文、traceId
  • 日志信息安全-脱敏
  • 禁用system.out/error

9.Mysql开发规范

  • 建表规约
    • 字段、索引、表命名规范
  • 索引规约
    • 普通索引、唯一索引、组合索引
    • 索引区分度
  • SQL规约
    • 外键与级联
    • count(列名)、count(1)、count(*)
  • ORM规约

10.统一工具与框架

  • 常用工具封装(httpclient/orm/异常处理)
  • 分布式基础组件(缓存、限流、分布式锁、幂等)
  • 业务监控

11.需求管理

  • 需求来源:客户 or 业务
  • 需求类型:重要紧急程度
  • 需求优先级

技术规范

1.架构评审

  • 架构设计目标
    • 功能需求
    • 非功能需求
  • 架构设计原则
    • 合适原则
    • 简单原则
    • 演化原则
  • 架构评审要素
    • 技术选型
    • 高性能
    • 可扩展性
    • 高可用
    • 可伸缩性
    • 弹性处理
    • 兼容性
    • 安全性
    • 可测性
    • 可运维性
    • 监控与报警

2.代码评审

  • 开发规约插件扫描
  • Sonar扫描
    • 确认代码与需求
    • 编码规范
    • 潜在bug
    • 文档与注释
    • 重复代码
    • 复杂度
    • 监控与报警
    • 测试覆盖度

3.发布计划评审

  • 确认有无外部依赖、协调外部发布时间
  • 发布配置确认、配置文件、数据库、 中间件
  • 二方库与应用发布顺序
  • 数据订正与表结构变更
  • 回滚计划
  • 生产环境测试用例回归

4.技术规划

  • 短期规划 - 周
    • 系统检查:慢接口、慢查询、错误日志、系统指标
  • 长期规划 - 年
    • 年度规划:架构腐蚀、性能优化、业务可扩展性、弹性、可扩展性

管理

团队建设与管理

  • 集权式管理
  • 放权式管理
    • 思路转变
    • 口令转变
    • 授权不授责

团队文化

  • 坦诚、公开、透明
  • 平等相处、消除等级感
  • 工作气氛轻松、团队关系和谐
  • 敢于担当、主动承担责任
  • 成就他人、乐于分享

沟通与辅导

  • 私密环境
  • 提前告知主题与时间
  • 定期举行
  • 用心倾听
  • 适当引导

招聘与解雇

  • 企业发展阶段:初创、快速发展
  • 团队类型:项目、技术、业务驱动
  • 人才筛选:专业技能、沟通能力、责任心、靠谱、正能量、价值观、背景调查
Comments
Write a Comment