Go介绍

Go 语言的性能在带有 GC 和运行时的语言中名列前茅,与不带 GC 的静态编程语言(比如 C/C++)之间也没有数量级的差距。在各大基准测试网站上,在相同的资源消耗水平的前提下,Go 的性能虽然低于 C++,但高出 Java 不少。

go语言学习笔记01 入门_go语言


go语言学习笔记01 入门_go语言_02

go语言学习笔记01 入门_go语言_03

go语言学习笔记01 入门_go语言_04


go语言学习笔记01 入门_go语言_05

go语言学习笔记01 入门_go语言_06

go语言学习笔记01 入门_go语言_07

go语言学习笔记01 入门_go语言_08

go语言学习笔记01 入门_go语言_09

go语言学习笔记01 入门_go语言_10

go语言学习笔记01 入门_go语言_11


go语言学习笔记01 入门_go语言_12

go语言学习笔记01 入门_go语言_13

go语言学习笔记01 入门_go语言_14

go语言学习笔记01 入门_go语言_15

go语言学习笔记01 入门_go语言_16

go语言学习笔记01 入门_go语言_17

go语言学习笔记01 入门_go语言_18

命令源码文件


go语言学习笔记01 入门_go语言_19

go语言学习笔记01 入门_go语言_20

go语言学习笔记01 入门_go语言_21

    当需要模块化编程时,我们往往会将代码拆分到多个文件,甚至拆分到不同的代码包中。但无论怎样,对于一个独立的程序来说,命令源码文件永远只会也只能有一个。如果有与命令源码文件同包的源码文件,那么它们也应该声明属于main包。

go语言学习笔记01 入门_go语言_22


库源码文件

go语言学习笔记01 入门_go语言_23

go语言学习笔记01 入门_go语言_24

++++++++++++++++++++++++++++++++++++

Go 的祖先

go语言学习笔记01 入门_go语言_25

go语言学习笔记01 入门_go语言_26

Go 的特性

go语言学习笔记01 入门_go语言_27

go语言学习笔记01 入门_go语言_28

go语言学习笔记01 入门_go语言_29

Go 为了保证代码的健壮性,屏蔽了一些容易犯错的操作。例如没有隐式的数值转换、没有指针运算、没有类型别名、运行时会检查数组的边界。Go 语言也没有手动的内存管理,而是让运行时托管了无用内存的释放工作,这又被称为垃圾回收。Go 还拥有内存逃逸功能,这意味着我们可以传递栈上变量的地址,而这在 C 语言中会产生类似野指针的问题。

go语言学习笔记01 入门_go语言_30

最后要强调的是,Go 函数调用时参数是值传递,在调用过程中修改函数参数不会影响到原始的值。

Go语言工作方向

go语言学习笔记01 入门_go语言_31