最原始的语言,从人类使用的手语,到语音表达;从英语到汉语,以及到计算机能识别的各种编程语言,每个语言都有自己的语法。语法就如同大家相互的约定,以便在沟通交流,信息同步的时候,有一个通信的标准,可以相互传达准确的信息,而不会因为相互的认识不一致导致的问题。那么Go语言也是类似的,Go语言的基础语法主要由这几个方面构成,Go语言的关键字,Go语言的标识符,行分隔符回车,变量声明分割的空格,注释,以及标记。

1 Go 语言的关键字

1.1 关键字和保留字

  • 分支选择有关的:switch,break,case,default, fallthrough
  • 条件循环有关的:for,range,select,if,else,goto,continue
  • 类型定义有关的:interface,struct
  • 多线程有关的:go,chan
  • 包管理有关的:package,import
  • 变量定义有关的:map,const,type,var

1.2 预定义标识符

  • 容器操作有关的:append,cap,len,
  • 数据类型有关的:bool,byte,uint,uint16,uint32,uint64,int,int8,int16,int32,int64,float,float16,float32,float64,complex,complex64,complex128,string,uintptr
  • bool类型值:true,false
  • 其他:iota,real,recover,panic,nil,new,make,imag,copy,close
    console输出有关:print,println
2 Go语言的变量标识符

不能以数字为开头的变量定义,满足[A-Z]和[a-z]和[0-9]的组合。不能有运算符,不能有预定义的标识符,不能有关键字。如下定义是不合法的:(不合法例子)

  • 以数字开头:123var
  • Go语言关键字不能作为变量,如:case
  • 运算符不能作为变量:max/total
3 Go语言的分隔符

行分隔符和空格,行代表一个语句的开始和结束,相当于一个指令,没有分号结尾。但是如果同一行有多个语句则需要分号;进行划分。空格则代表一个定义(变量)的开始和结束,代表多个不同的标识符和关键字区分。如下例子:

package main
import "fmt"
func main() {
    var astring string
    fmt.Println("Hello there");fmt.Println("Welcome U");fmt.Println("This is end")
    astring = "nihao"
    fmt.Println(astring)
}
4 Go语言的注释

主要包括单行注释和多行注释。

// 单行注释
/* 多行注释 */ 
5 Go语言的标记
package main
import "fmt"

func main() {
    fmt.Println("例子")
}

语句的标记包括:关键字,标识符,常量,字符串,符号。第五行如此拆分如下:

fmt
.
Println
(
"例子"
)

所以不管是人类之间交流的各国语言,还是可以跟计算机传达信息和指令的编程语言。对于想要掌握一门语言来说,掌握基本语法是首要的条件,也是必要的条件。至于语法怎么快速掌握,并且牢记于心,特别对于没有编程语言基础的小伙伴,最有效高效的办法就是练习(写一写),并多动动手,才能达到应用自如的层次。所以要多练习,多写代码,多读代码。
这个就如同高中英语老师说你的阅读还没进步是因为,你还没有突破读到10万阅读量,等你到了就有量遍并发生质的改变。
当然学习Go语言不需要那么大的量,你只需要应用到工作和实践中,开始写例子和项目就好了。

关于本专栏——Go 语言教程,专栏致力于为希望可以系统地,一条一条地,一步一步的学习Go语言的朋友提供一个可以持续阅读的地方,当然也希望可以通过我的实践经验以及相应的基础,可以给你一些学习之外的想法和总结,以及提高。如果真的有帮助,哪怕一点点,可以把这个一点点的提高分享给我,欢迎跟我勾搭联系。