Go 语言项目开发实战--极客时间课程推荐/优惠
版权声明
本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
你将获得:
- 一线企业应用的最佳实践方式;
- 一套可执行、可复用的企业应用代码;
- 详解Go项目开发5大核心流程;
- 一次掌握Go项目开发常用技能点。
课程介绍
当前,很多公司的技术架构都在往云原生架构演进,而绝大部分的云原生核心项目是用Go来构建的,例如:Kubernetes、Docker等。同时,国内腾讯、阿里等一线大厂也都在积极转Go。伴随着 Go 的火热,各个公司对 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 种部署方式:传统部署方式和容器化部署方式,对比它们在部署方法、复杂度和能力上的异同。
课程目录
开篇词
- 开篇词 | 从 0 开始搭建一个企业级 Go 应用
课前必学
- 01 | IAM系统概述:我们要实现什么样的 Go 项目?
- 02 | 环境准备:如何安装和配置一个基本的 Go 开发环境?
- 03 | 项目部署:如何快速部署 IAM 系统?
实战第 1 站:规范设计
- 04 | 规范设计(上):项目开发杂乱无章,如何规范?
- 05 | 规范设计(下):commit 信息风格迥异、难以阅读,如何规范?
- 06 | 目录结构设计:如何组织一个可维护、可扩展的代码目录?
- 07 | 工作流设计:如何设计合理的多人开发模式?
- 08 | 研发流程设计(上):如何设计 Go 项目的开发流程?
- 09 | 研发流程设计(下):如何管理应用的生命周期?
- 10 | 设计方法:怎么写出优雅的 Go 项目?
- 11 | 设计模式:Go常用设计模式概述
特别放送
- 特别放送 | 给你一份清晰、可直接套用的Go编码规范
- 特别放送 | 给你一份Go项目中最常用的Makefile核心语法
- 特别放送 | Go Modules依赖包管理全讲
- 特别放送 | IAM排障指南
- 特别放送 | Go Modules实战
- 特别放送 | 分布式作业系统设计和实现
- 直播加餐|如何从小白进阶成 Go 语言专家?
实战第2站:基础功能设计或开发
- 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 | 应用构建实战:如何构建一个优秀的企业应用框架?
实战第3站:服务开发
- 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 | 效率神器:如何设计和实现一个命令行客户端工具?
实战第4站:服务测试
- 36 | 代码测试(上):如何编写 Go 语言单元测试和性能测试用例?
- 37 | 代码测试(下):Go 语言其他测试类型及 IAM 测试介绍
- 38|性能分析(上):如何分析 Go 语言代码的性能?
- 39|性能分析(下):API Server性能测试和调优实战
实战第5站:服务部署
- 40 | 软件部署实战(上):部署方案及负载均衡、高可用组件介绍
- 41 | 软件部署实战(中):IAM 系统生产环境部署实战
- 42 | 软件部署实战(下):IAM系统安全加固、水平扩缩容实战
- 43|技术演进(上):虚拟化技术演进之路
- 44|技术演进(下):软件架构和应用生命周期技术演进之路
- 45|基于Kubernetes的云原生架构设计
- 46 | 如何制作Docker镜像?
- 47 | 如何编写Kubernetes资源定义文件?
- 48 | IAM 容器化部署实战
- 49 | 服务编排(上):Helm服务编排基础知识
- 50 | 服务编排(下):基于Helm的服务编排部署实战
- 51 | 基于 GitHub Actions 的 CI 实战
结束语
- 结束语 | 如何让自己的 Go 研发之路走得更远?
- 期末考试|《Go语言项目开发实战》满分试卷,等你来挑战!