Go语言的大程序都从小的基本组件构建而来。
变量
存储值简单表达式
通过加减操作合并成为大的基本类型
通过数组和结构体进行聚合表达式
通过if和for等控制语句来决定执行的顺序语句
被组织成函数用于隔离和复用函数
组织成源文件和代码包Go中函数、变量、常量、类型、语句标签和包的名称都遵循如下规则:名称的开头是一个字母(Unicode中的字符即可)或者下划线,后面可以跟任意数量的字母、数字和下划线,对大小写敏感。
Go有25个关键字:只能用在语法允许的地方:
字母顺序 | 关键字 |
---|---|
b | break |
c | case、chan、const、continue |
d | default、defer |
e | else |
f | func、fallthrough、for |
g | go、goto |
i | interface、if、import |
m | map |
p | package |
r | range、return |
s | select、struct、switch |
t | type |
v | var |
Go有30多个内置的预声明的常量、类型和函数:
种类 | 关键字 |
---|---|
常量 | true、false、iota、nil |
int类型 | int、int8、int16、int32、int64 |
unit类型 | uint、uint8、unit16、uint32、unit64、uintptr |
float类型 | float32、float64、complex64、conplex64 |
其他类型 | bool、byte、rune、string、error |
函数 | make、len、cap、new、append、copy、close、delete、complex、real、imag、panic、recover |
这些名称不是预留的,可以在声明中使用它们(即对这些名称进行重声明),但是这样是有冲突风险的。
实体的第一个字母是否大写决定了其可见性是否跨包。如fmt包中的Printf
函数,包名总是小写字母组成。
名称的长度没有限制,通常作用域越大,就是越长且有意义的名称。当由多个单词组成时,通常采用驼峰式的风格,而不是下划线。当单词中包含首字母缩写组成的单词时(如ASCII、HTML这样的),通常使用相同的大小写(全大写或全小写)。