初始开发阶段的工作流程

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第5天,点击查看活动详情

开发阶段

云原生的发展,深刻改变了后端发展

image-20220705141032183

  • 云原生下的开发
    传统虚拟机:
    在物理主机中虚拟出多个虚拟机,每个虚拟机拥有自己的操作系统
    运维人员负责维护和交付虚拟机
    每个虚拟机中都要安装相应的依赖环境

容器化:

容器是在操作系统中虚拟出来的
通过cgroup,namespace和Union Mount等技术实现了容器之间的相互隔离,同时容器只有很低的开销
应用和其依赖作为一个整体,打包成镜像交付

image.png

两者的区别是部署的形式不同

因此后端开发不再依赖运维人员创建程序的运行环境

  • 微服务:

    image-20220705150159771

    特点:

    • 开发环境逐渐云原生化
    • FaaS,PaaS等等技术,让开发逐渐从本地IDE向线上转变
    • 从入职领到电脑搭建完一套完整的开发环境需要很久,通过WEB IDE等技术,环境未来将会开箱即用
  • 团队的分支策略

    • 不同的分支策略会影响团队的开发流程
    • image-20220705155123090
    • 有些团队会有一个专门的分支叫做release分支,大家都把代码合并到release分支,然后测试,发布,之后再把release分支合会master
    • 有些团队会直接把开发的分支合入master,然后再用某个master上的commit发布
  • 代码规范、自测和文档

    • 代码规范

      • 养成良好的注释习惯,超过三个月的代码,自己都会忘了当时在想什么。
      • 不要有魔法数字,魔法字符串(例如:在判断条件里判断某个变量为2,可以用常量表示)
      • 重复的逻辑抽象成公共的方法,不要copy代码
      • 正确使用IDE的重构功能,防止修改错误
    • 自测

      • 单元测试
      • 功能环境测试
      • 测试数据构造
    • 文档

      • 大型改造需要有技术设计文档,方案评审
      • 好的接口文档能更方便的和前端进行沟通
posted @ 2022-10-03 10:31  Luciferpluto  阅读(1)  评论(0)    收藏  举报  来源