孔令飞 腾讯云专家工程师,前Red Hat、联想云工程师。
拥有多年Go项目开发经验,参与过腾讯云云函数 SCF、腾讯游戏容器平台 TenC、腾讯游戏微服务中台等大型企业项目的开发,目前负责腾讯云容器服务 TKE 的相关研发工作,专注于云原生混合云领域的基础架构开发。
同时,拥有大规模 Kubernetes 集群、微服务、API网关的研发和架构经验,对微服务、虚拟化、Kubernetes/Docker、Serverless 等云计算相关技术有较深的理解。
当前,很多公司的技术架构都在往云原生架构演进,而绝大部分的云原生核心项目是用Go来构建的,例如:Kubernetes、Docker等。同时,国内腾讯、阿里等一线大厂也都在积极转Go。伴随着 Go 的火热,各个公司对 Go 研发工程师的需求也越来越旺盛。
因此,很多开发者都在学习或使用 Go 来开发项目。但是,很多初学者在学习 Go 项目开发时,经常会面临一系列问题:
为此,我们邀请孔令飞开设了一门 Go 语言项目实战课。他会围绕一个可部署、可运行的企业应用源码,遵循 Go 项目开发流程,为你系统、详细地讲解 Go 应用开发需要用到的技能点,让你掌握它们的具体构建方法、业界的最佳实践和一线开发经验。
同时,专栏最终交付给你的这套代码能够满足绝大部分的企业应用开发场景,你可以基于它做二次开发,快速构建起你自己的企业应用。
整个专栏共划分为 6 个核心模块。
实战准备。从准备一个实验环境开始,手把手帮你把实战项目部署好。在加深你对实战项目的理解的同时,也会教你一些部署的技能点,包括准备开发环境、制作 CA 证书、安装应用等。
实战第 1 站:规范设计。详细介绍开发中常见的 10 大规范,例如目录规范、日志规范、错误码规范、Commit 规范等。通过本模块,你能够学会如何设计常见的规范,进而为高效开发一个高质量、易阅读、易维护的 Go 应用打好基础。
实战第 2 站:基础功能设计或开发。教你设计或开发一些 Go 应用开发中的基础功能,例如日志包、错误包、错误码等。
实战第 3 站:服务开发。借助一个企业级 Go 项目代码的解析过程,详细讲解 Go 开发阶段的各个技能点,例如怎么设计和开发 API 服务、Go SDK、客户端工具等。
实战第 4 站:服务测试。围绕实战项目讲解如何进行单元测试、功能测试、性能分析和性能调优,最终让你交付一个性能和稳定性都经过充分测试的、生产级可用的服务。
实战第 5 站:服务部署。通过实际部署一个实战项目,教你如何部署一个高可用、安全、具备容灾能力,又可以轻松水平扩展的企业应用。同时,围绕 2 种部署方式:传统部署方式和容器化部署方式,对比它们在部署方法、复杂度和能力上的异同。