入门Go语言学习路线图,必须跨过的误区 | Go主题月

2,453 阅读3分钟

1、大厂认可,岗位需求火热

最近,可以看到的招聘趋势已经在大厂中占据了重要的地位,无论是职位的数量和薪资待遇,已经和java持平,甚至略微高出一点点。Go 语言具有入门快、程序库多、运行迅速等特点,也是完美平衡了开发效率和执行效率,是各大编程语言中的佼佼者。

企业对于 Go 语言的使用情况正逐年上升。自2009年发布以来,Go 语言就深受明星大厂的喜爱,包括 腾讯、B站、滴滴、今日头条、小米、奇虎 360、京东等明星公司了,业界甚至一度看好 Go 语言有取代 Java 王者地位的潜力。 Go语言是谷歌公司推出的新一代的开发语言,出身名门的 Go 语言,你还不赶快上手,提前学习一下。

2、学习路线 & 基础知识一键获取

入门 Go 语言的同学基础不一,具体可以分成下面几类。

  • 零基础的同学:可能正准备入行或对编程刚开始感兴趣,对计算机、操作系统和网络方面的知识不太了解。
  • 无编程经验或者编程经验较少的同学:可能正在从事其他的技术相关工作,也许可以熟练编写脚本,但是对程序设计的通用知识和技巧还不太了解。
  • 有其他语言编程经验的同学:可能已经是程序员或软件工程师,可以用其他编程语言熟练编写程序,但对 Go 语言还不太了解。
  • 有一定 Go 语言编程经验的同学:已有 Go 语言编程基础,写过一些 Go 语言程序,急需进阶却看不清途径。 基于以上分类,我制定了一份 Go 语言学习路径和基础知识图。不论你属于上述哪一类,都可以按照此路径去学习深造。

3、进阶高级知识点逐个击破

除了基础知识之外,如果你想要进阶高级 Go 语言工程师,还需要通关以下的知识点。

数据类型方面:

  • 基于底层数组的切片;
  • 为了传递数据的通道;
  • 作为一等公民的函数;
  • 为实现面向对象的结构体;
  • Go语言特色-无侵入实现的接口。

在语法方面:

  • 异步编程大杀器go语句;
  • 函数的最后防线defer语句;
  • 可做类型判断的switch语句;
  • 多通道操作利器select语句;
  • 非常有特色的异常处理函数panic和recover。

Go语言自带的程序测试套件,相关的概念和工具包括:

  • 专用的testing代码包;
  • 以及功能强大的go test命令。

Go 语言的同步工具:

  • 经典的互斥锁、读写锁、条件变量和原子操作;
  • 一次性次执行小助手 sync.Once、临时对象池 sync.Pool、sync.WaitGroup 和 context.Context; 如果你理解了上述知识点,就掌握了 Go 语言编程的精髓。在这之后,再研读 Go 语言标准库和优秀的第三方库,就会事半功倍;使用 Go 语言编写软件时,就会游刃有余。