0. 专栏规划
peter 184 3

专栏规划

本专栏记录笔者自己学习 Go 开发的一些笔记,欢迎大家一起交流。

原由

记录学习 Go 语言课程的笔记,采众家之长。

与广大网友一起学习,期望在学习完本专栏后,可以具备实际后端项目开发能力。

更新

语言是不断的发展的,知识也在不断更新与迭代,因此本专栏将保持一周一更的安排。笔者最近在开发过程中遇到了不少基础上的困扰,因此想重新温习一下Go的知识,先对之前更新的内容进行补充与完善。


update in:2021/3/24

内容安排

第一章:Go 语言简介

  • 1.1 Go 语言简介
  • 1.2 编写第一个 Go 程序

第二章:基本数据结构

  • 2.1 变量、常量与其他语言的差异
  • 2.2 数据类型
  • 2.3 运算符
  • 2.4 条件和循环

第三章:常用集合

  • 3.1 数组和切片
  • 3.2 Map 声明、元素访问及遍历
  • 3.3 Map 与工厂模式,在 Go 语言中实现 Set

第四章:字符串

  • 4.1 字符串

第五章:函数

  • 5.1 Go 语言的函数
  • 5.2 可变参数和 defer

第六章:面向对象编程

  • 6.1 行为的定义和实现
  • 6.2 Go 语言的相关接口
  • 6.3 扩展与复用
  • 6.4 不一样的接口类型,一样的多态

第七章:编写好的错误处理

  • 7.1 编写好的错误处理
  • 7.2 panic 和 recover

第八章:包和依赖管理

  • 8.1 构建可复用模块
  • 8.2 依赖管理

第九章:并发编程

  • 9.1 协程机制
  • 9.2 共享内存并发机制
  • 9.3 CSP并发机制
  • 9.4 多路选择和超时
  • 9.5 channel 的关闭和广播
  • 9.6 任务的取消
  • 9.7 Context与任务取消

第十章:典型并发任务

  • 10.1 只运行一次
  • 10.2 仅需任意任务完成
  • 10.3 所有任务完成
  • 10.4 对象池
  • 10.5 sync.pool 对象缓存

第十一章:测试

  • 11.1 单元测试
  • 11.2 Benchmark
  • 11.3 BDD

第十二章:反射和 Unsafe

  • 12.1 反射编程
  • 12.2 万能程序
  • 12.3 不安全编程

第十三章:常见架构模式的实现

  • 13.1 实现 pipe-filter framework
  • 13.2 实现 micro-kernel framework

第十四章:常见任务

  • 14.1 内置 JSON 解析
  • 14.2 easyjson
  • 14.3 HTTP 服务
  • 14.4 构建 RESTful 服务

第十五章:性能调优

  • 15.1 性能分析工具
  • 15.2 性能调优示例
  • 15.3 别让性能被锁住
  • 15.4 GC 友好代码

第十六章:高可用性服务设计

  • 16.1 高效字符串连接
  • 16.2 面向错误的设计
  • 16.3 面向恢复的设计
  • 16.4 Chaos Engineering
  • 16.5 结课测试&结束语
预览图
评论区

索引目录