了解 Go 上

Go语言是Google在2006年创建的,2009年开源,以其内置的并发支持和Goroutine著称。Goroutine是一种轻量级线程,启动快速,内存开销小,便于创建大量并发执行的任务。此外,Go语言自带垃圾回收机制,支持静态编译,拥有丰富的库和详细的文档,简化了错误处理和并发编程,使得开发效率提高。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、了解go:

1、Go语言的来历:google20%时间的产物。

2、Go 语言是一门年轻的语言

3、Go语言生于2006年,2009年开源,2012年发布稳定版。

二、go特点:

1、Go 语言从底层原生支持并发,无需第三方库、开发者的编程技巧和开发经验

2、Go 语言并发是基于goroutine的,可以将goroutine理解成一种虚拟线程。

3、Go 语言在运行时会参与调度goroutine,并将goroutine合理分配给每个CPU中,最大限度地使用CPU性能,开启一个goroutine消耗非常小(大概2KB的内存),你可以轻松创建百万个goroutine

注:Goroutine的特点:

  1. 具有可增长的分段堆栈,这意味着它们只有在需要时才会使用更多的内存。

  1. 启动时间比线程快

  1. 原生支持利用channel安全地进行通信

  1. 共享数据结构式无需使用互斥锁

三、go语言的优点:

1、自带gc

GC是什么:GC的本质是内存的自动管理,用来回收堆(Heap)中不再需要(使用)的对象。

2、静态编译、编译好后,扔给服务器直接运行

3、丰富的库和详细的开发文档

4、语言层支持并发、和拥有同步并发的channel类型,使并发开发编的非常方便

5、简单的语法,提高开发效率,同时更改环境变量

四、go语言的主要特征:

1、自动立即回收。

2、更丰富的内置类型。

3、函数多返回值。

4、错误处理。

5、匿名函数和闭包。

6、类名和类型。

7、并发编程。

8、反射。

9、语言交互性。

五、go函数、常量、变量等命名方式:

  1. 首字符可以任意的unicode字符或者下划线

注:Unicode字符:Unicode又称为统一码、万国码、单一码,是国际组织制定的旨在容纳全球所有字符的编码方案,包括字符集、编码方案等,它为每种语言中的每个字符设定了统一且唯一的二进制编码,以满足跨语言、跨平台的要求。

  1. 剩余字符可以是unicode字符、下划线、数字

  1. 字符长度不限

六、go语言关键字、保留字:

Go语言关键字(25个):

break, default, func, interface, select,

case,defer, go, map, struct, chan, else,

goto,package, switch, const, fallthrogh,

if,range, type, continue, for, import, return,var

Go还有37个保留字:

Constants:true, false, iota, nil

Types:int,int8,int16,int32,int64,uint,uint8,uint16,uint32,uint64,uintptr float32,float64,complex128,complex64,bool,byte,rune,string,error

Functions:make,len,cap,new,append,copy,close,delete,complex,real,imag,panic,recover

七、Go项目构建及编译:

一个go工程中包含一下三个母鹿(目录、文件):

Src:源代码文件

Pkg:包文件

Bin:相关bin文件

在安装golang之后,配置存储文件GOPATH的时候用到。

注:内容文字较多,有出错地方请指正,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值