返回

读书笔记 | 《The Go Programing Language》重点回顾(三)

后端

引子:

我又和这位朋友聊天了,大家还记得吗?上回是Golang中调用C语言函数(Golang中调用C语言函数)。在他按我的指点解决了函数调用的问题后,又问我该怎么好好学习Go语言?我说你除了基础知识之外,还需要有针对性地练习,也就是俗话说的要“多写”。为了引起他的兴趣,我把《The Go Programing Language》的链接直接给他发了过去。没想到,隔了几天,他又来找我了,要跟我交流一下自己最近的学习成果。

初学者对《The Go Programing Language》的评价:

当我问他读完了这本书的哪一部分的时候,他说他花了3个晚上的时间,通读了其中的5章。我故意表示出惊讶的表情,问他为什么读得这么快。他说这本书相较于其他计算机书籍来说,实在是太好读了。书的叙述非常具有逻辑性,所以读起来一点都不觉得枯燥,反而有点像在读小说一样。他还说,自己读完了这5章之后,才发现之前学的那些知识都是零零散散的,现在才真正有了系统地认识。

Go语言基础知识的讲解

  • 变量声明:

    • 变量声明的基本语法是var name type
    • 变量的类型可以是基本类型(如int、float64、string等)或复合类型(如数组、切片、映射等)。
    • 变量可以初始化也可以不初始化。
  • 类型转换:

    • 类型转换可以将一种类型的值转换为另一种类型的值。
    • 类型转换有两种方式:显式转换和隐式转换。
    • 显式转换使用type()函数将一种类型的值转换为另一种类型的值。
    • 隐式转换是编译器自动将一种类型的值转换为另一种类型的值。
  • 控制语句:

    • 控制语句用于控制程序的执行流程。
    • Go语言有五种控制语句:ifelseforswitchgoto
    • if语句用于判断条件是否成立,如果成立则执行if语句块中的代码。
    • else语句用于判断条件不成立时执行的代码。
    • for语句用于循环执行代码块。
    • switch语句用于根据变量的值执行不同的代码块。
    • goto语句用于跳转到程序中的另一个位置。
  • 函数定义:

    • 函数是程序中执行特定任务的代码块。
    • 函数的定义语法是func name(parameters) return_type
    • 函数可以有参数也可以没有参数。
    • 函数可以有返回值也可以没有返回值。

进阶知识

  • 数组:

    • 数组是固定长度的数据结构,用于存储相同类型的值。
    • 数组的元素可以使用索引访问。
    • 数组的长度是不可变的。
  • 切片:

    • 切片是动态长度的数据结构,用于存储相同类型的值。
    • 切片的元素可以使用索引访问。
    • 切片的长度是可变的。
  • 映射:

    • 映射是键值对的数据结构。
    • 映射的键可以是任何类型的值,而映射的值可以是任何类型的值。
    • 映射的键是唯一的。

总结

Go语言是一种非常强大的语言,非常适合构建高并发、高性能的应用程序。如果你想学习Go语言,我强烈推荐你阅读《The Go Programing Language》这本书。这本书将带你从入门到精通,让你成为一名合格的Go语言程序员。