开篇词 | 从 0 开始搭建一个企业级 Go 应用
01 | IAM系统概述:我们要实现什么样的 Go 项目?02 | 环境准备:如何安装和配置一个基本的 Go 开发环境?03 | 项目部署:如何快速部署 IAM 系统?
04 | 规范设计(上):项目开发杂乱无章,如何规范?05 | 规范设计(下):commit 信息风格迥异、难以阅读,如何规范?06 | 目录结构设计:如何组织一个可维护、可扩展的代码目录?07 | 工作流设计:如何设计合理的多人开发模式?08 | 研发流程设计(上):如何设计 Go 项目的开发流程?09 | 研发流程设计(下):如何管理应用的生命周期?10 | 设计方法:怎么写出优雅的 Go 项目?11 | 设计模式:Go常用设计模式概述
12 | API 风格(上):如何设计RESTful API?13 | API 风格(下):RPC API介绍14 | 项目管理:如何编写高质量的Makefile?15 | 研发流程实战:IAM项目是如何进行研发流程管理的?16 | 代码检查:如何进行静态代码检查?17 | API 文档:如何生成 Swagger API 文档 ?18 | 错误处理(上):如何设计一套科学的错误码?19 | 错误处理(下):如何设计错误包?20 | 日志处理(上):如何设计日志包并记录日志?21 | 日志处理(下):手把手教你从 0 编写一个日志包22 | 应用构建三剑客:Pflag、Viper、Cobra 核心功能介绍23 | 应用构建实战:如何构建一个优秀的企业应用框架?
24 | Web 服务:Web 服务核心功能有哪些,如何实现?25 | 认证机制:应用程序如何进行访问认证?26 | IAM项目是如何设计和实现访问认证功能的?27 | 权限模型:5大权限模型是如何进行资源授权的?28 | 控制流(上):通过iam-apiserver设计,看Web服务的构建29|控制流(下):iam-apiserver服务核心功能实现讲解30 | ORM:CURD 神器 GORM 包介绍及实战31 | 数据流:通过iam-authz-server设计,看数据流服务的设计32 | 数据处理:如何高效处理应用程序产生的数据?33 | SDK 设计(上):如何设计出一个优秀的 Go SDK?34 | SDK 设计(下):IAM项目Go SDK设计和实现35 | 效率神器:如何设计和实现一个命令行客户端工具?
36 | 代码测试(上):如何编写 Go 语言单元测试和性能测试用例?37 | 代码测试(下):Go 语言其他测试类型及 IAM 测试介绍38|性能分析(上):如何分析 Go 语言代码的性能?39|性能分析(下):API Server性能测试和调优实战
40 | 软件部署实战(上):部署方案及负载均衡、高可用组件介绍41 | 软件部署实战(中):IAM 系统生产环境部署实战42 | 软件部署实战(下):IAM系统安全加固、水平扩缩容实战43|技术演进(上):虚拟化技术演进之路44|技术演进(下):软件架构和应用生命周期技术演进之路45|基于Kubernetes的云原生架构设计46 | 如何制作Docker镜像?47 | 如何编写Kubernetes资源定义文件?48 | 基于腾讯云 EKS 的容器化部署实战49 | 服务编排(上):Helm服务编排基础知识50 | 服务编排(下):基于Helm的服务编排部署实战51 | 基于 GitHub Actions 的 CI 实战
特别放送 | 给你一份清晰、可直接套用的Go编码规范特别放送 | 给你一份Go项目中最常用的Makefile核心语法特别放送 | Go Modules依赖包管理全讲特别放送 | IAM排障指南特别放送 | Go Modules实战特别放送 | 分布式作业系统设计和实现
结束语 | 如何让自己的 Go 研发之路走得更远?期末考试|《Go语言项目开发实战》满分试卷,等你来挑战!