📊 Golang

Table of Contents

你将学习如下内容

  • 基础:开发核心能力
  • 高级机制:线程调度,垃圾回收等,进阶的面试经常会考
  • 源码解读:对 Golang 加深理解,进阶开发有帮助
    • 双向链表 list:container/list/list.go
    • 标识符:builtin/builtin.go
  • 常用框架:对生产开发有帮助,可以简单了解下,在技术选型的时候可以快速做出判断

课程列表

  • Go 语言基础语法

    思维导图预习 命名 命名规则 Go 语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则: 一个标识符必须以一个字母(Unicode字母)或下划线开头,后面可以跟任意数量的字母、数字或下划线。 关键字 Go语言中关键字有25个;关键字不能用于自定义标识符,只能在特定语法结构中使用。 break default func interface select case defer go map struct chan else goto package switch const fallthrough if range type continue for import return var 预定义标识符 参考资料:

  • Go 源码解读:双向链表 list

    源码地址:container/list/list.go 源码版本:1.17.6 双向链表是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。 所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。 Golang sdk 中实现了双向链表,路径为container/list/list.go,我们可以学习一下 sdk 中的实现。 思维导图预习 包 package // 包 list 实现了双向链表 // // 以下是遍历双向链表的方法 (在这里 l 是一个 *List): // for e := l.

  • Go 源码解读:标识符

    源码地址:builtin/builtin.go 源码版本:1.17.6 标识符是指 Go 语言对各种变量、方法、函数等命名时使用的字符序列,标识符由若干个字母、下划线_和数字组成。 通俗的讲就是凡可以自己定义的名称都可以叫做标识符。 思维导图预习 空白标识符 下划线_是一个特殊的标识符,称为空标识符,它可以像其他标识符那样用于变量的声明或赋值(任何类型都可以赋值给它),但任何赋给这个标识符的值都将被抛弃,因此这些值不能在后续的代码中使用,也不可以使用_作为变量对其它变量进行赋值或运算。 标识符命名规则 由 26 个英文字母、0~9、下划线"_“组成 不能以数字开头,例如 var 1num int 是错误的 Go 语言中严格区分大小写 标识符不能包含空格 不能以系统保留关键字作为标识符,比如 break,if 等等 Go SDK 预先声明的标识符 Go 预先声明的标识符定义在 Go SDK 的 /builtin/builtin.