Noel1992 / go-training

用树形的方式合理地组织知识点,并为每一个知识点配置可直接编译运行的go源代码

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

go-training

目前市面上各种golang的学习资料实在不少,不过学习过一段时间以后发现有两个问题。一是每一个文章、站点都是介绍一个方面,缺乏一个整体上的视角。二是学习完了之后不练习的话,基本一周后就忘的差不多了。

所以我把我个人的学习、练习过程以此项目整理发布了出来。

  • 用树形的方式进行尽量合理地组织,便于整体上把握
  • 每一个知识点尽量配置go源代码,便于动手练习

该项目目前只更新了基础部分,日后会继续更新和完善。

avatar

开发环境

  • 安装
  • 配置GOROOT、GOPATH
  • GoLand使用以及其快捷键

Golang知识树

Golang进阶

  • 编译原理
    • [golang之编译原理]
    • [数组编译过程理解]
    • [为什么数组常量下标编译时报错,而变量下标运行时panic]
    • [对切片append超过其容量时会发生什么]
    • [了解字符串拼接、转换的开销]
    • [golang函数调用和c函数开销对比]
    • [为什么make能同时支持map、slice和chan]
    • [for range循环解惑]
    • [GPM之阻塞的系统调用实勘]
    • [Golang协程上的网络IO]
  • 主流第三方库用法
    • gorm
    • cobra
    • redigo
    • go-cache
    • viper
    • gRPC
    • 日志库
  • json编解码专题
    • encoding/json:
    • json-iterator
    • tidwall/gjson
    • easyjson
  • 并发
    • goroutine
    • channel
    • select
    • sync包:WaitGroup、互斥锁、读写互斥锁、Once、并发安全Map
  • 工程化与部署
    • 编码规范
    • 热升级
    • 项目布局
    • Make file
    • Docker file
    • 优雅地调试容器
    • CI && CD

一个web项目框架

经典问题集锦

-- --

参考学习资料

硬广个人技术公众号

avatar

About

用树形的方式合理地组织知识点,并为每一个知识点配置可直接编译运行的go源代码

License:Apache License 2.0


Languages

Language:Go 100.0%