05|全局视野:洞悉项目开发流程与规范
研发实现阶段
编码规范
- 深入了解
- 翻译
- 解释
- 总结
本文深入介绍了大型互联网产品开发中的研发实现阶段及其相关规范,包括编码规范、接口规范、日志规范、版本控制规范等。编码规范有助于提高代码质量、性能和团队协作;接口规范定义了系统与外界交互方式的协议;日志规范的好处包括打印调试、问题定位、用户行为分析和监控;版本控制规范使得团队可以轻松地拥有各个历史阶段代码的快照。此外,文章还介绍了Git的分布式版本控制系统及其工作流模式,包括Gitflow工作流和GitHub Flow工作流。另外,文章还提到了Commit规范的重要性以及测试阶段的六类测试。文章内容丰富,涵盖了项目开发流程中的多个关键环节,对于开发人员和项目管理者具有重要的参考价值。 在上线部署阶段,文章介绍了代码自动检查、代码评审、CI/CD流程以及上线部署的流程和注意事项。在运维阶段,SRE工程师的角色和工作重点得到了详细阐述,包括减少人工介入、服务稳定性指标的量化、SLO的定制与执行等。最后,文章还提及了运营阶段对新功能上线后的评估和决策依据的获取。 总的来说,本文详细介绍了大型互联网产品开发流程中的各个关键阶段和相关规范,以及运维和运营阶段的重要工作内容,为读者提供了全面的技术指导和实践经验。
《Go 进阶 · 分布式爬虫实战》,新⼈⾸单¥68
全部留言(4)
- 最新
- 精选
- 抱紧我的小鲤鱼这个快照并不是这次 commit 时项目中所有文件的复制,而是一种索引,通过这个索引可以找到这次 commit 时的所有文件,而 git 在每次 commit 时对项目中所有文件进行扫描,如果某文件发生变化则会对应生成一个新的文件 blob,记录当前 commit 时该文件的文件内容,而文件名是对文件内容的一次 SHA-1 运算得到的 40 位字符串,如果该文件内容没有发生变化,就不会产生新的 blob 对象(因为相同内容的 SHA-1 hash值唯一),而快照就是记录所有这次提交 commit 时 blob 文件名 SHA-1 hash 字符串集合,所以就可以通过某次 commit 的快照找到当时所有文件的 blob 对象文件 hash 字符串集合从而找到所有的文件,加载所有文件后就还原到了当时 commit 的项目状态。时间久了blob过多还会进行压缩 pack,只保存diff信息。
作者回复: 👏🏻有点细呀,更详细的推荐《Version Control with Git, 2rd Edition》
2022-10-20归属地:北京212 - G55回答下第二个问题吧: 就我工作的情况看 1. 业务迭代太快,大家都是完成任务为第一要素,对于质量和可维护性往往不那么看重。 2. code review机制不严格 对于代码风格可维护性检查不够 只检查能不能实现功能。 3. 大量实验性的代码堆砌在项目中,即使某些模块已经无效了但是代码没有被删掉, 导致出现一个文件几千行的情况。维护困难,新人接手成本高。
作者回复: 理想和现实的差距呀
2022-10-20归属地:北京27 - 徐石头思维导图有错别字,函数与线(栈),接口动调(态)调用,思维导图是不是少了网络部分?期待实战更有深度,前面几讲偏理论
作者回复: 👍🏻你说的是03讲的学习路线哈,看得非常细致,我会修复一下。学习路线里面更多的是与Go自身有关的知识进阶,包括网络、文件系统等标准库很多涉及到了对系统调用API的封装,也涉及到原生协程的使用,所以我暂时没放上去。实际上这个项目07、16、17会对Go网络部分进行深入的介绍,涉及到标准库的实现和操作系统的实现,可以关注一下。
2022-10-21归属地:北京3 - 文经郑老师,请教一下,你所在的团队tdd和code review做得怎样,有什么方法我们小公司可以借鉴的?
作者回复: 可以看看我后面的代码规范哈,一般用一些自动化工具例如golangci-lint进行检查
2022-11-25归属地:广东