我们专注攀枝花网站设计 攀枝花网站制作 攀枝花网站建设
成都网站建设公司服务热线:400-028-6601

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

Go语言入门基础知识有哪些-创新互联

这篇文章主要介绍“Go语言入门基础知识有哪些”,在日常操作中,相信很多人在Go语言入门基础知识有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go语言入门基础知识有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

新市ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

一、Go语言简介

1、什么是go语言?

2007年,受够了C++煎熬的Google首席软件工程师Rob Pike纠集Robert Griesemer和Ken Thompson两位牛人,决定创造一种新语言来取代C++, 这就是Golang。出现在21世纪的GO语言,虽然不能如愿对C++取而代之,但是其近C的执行性能和近解析型语言的开发效率以及近乎于完美的编译速度,已经风靡全球。特别是在云项目中,大部分都使用了Golang来开发,不得不说,Golang早已深入人心。而对于一个没有历史负担的新项目,Golang或许就是个不二的选择。

被称为GO语言之父的Rob Pike说,你是否同意GO语言,取决于你是认可少就是多,还是少就是少(Less is more or less is less)。Rob Pike以一种非常朴素的方式,概括了GO语言的整个设计哲学–将简单、实用体现得淋漓尽致。

很多人将GO语言称为21世纪的C语言,因为GO不仅拥有C的简洁和性能,而且还很好的提供了21世纪互联网环境下服务端开发的各种实用特性,让开发者在语言级别就可以方便的得到自己想要的东西。

2、golang语言特性

(1) 垃圾回收

内存自动回收,再也不需要开发人员管理内存。开发人员专注业务实现,降低了心智负担。只需要new分配内存,不需要释放。

(2)goroute天然并发

从语言层面支持并发,非常简单。使用一个go则在编译时会自动开启一个线程来执行后面的命令/函数/方法,不用像python需要先调用thread模块来开启线程goroute,轻量级线程,创建成千上万个goroute成为可能。基于CSP(Communicating Sequential Process)模型实现。

(3)多返回值

Go的函数可以有多个返回值

“`

func main() {

x,y:=p_fun(10,80)

// x,_ := p_fun(10,80) 多返回值函数时,只要一个返回值

fmt.Println(x,y)

}

//多返回值函数

func p_fun(a int,b int) (int,int) { //函数传入2个整型参数,返回2个值,都为int类型

sum := a+b

avg := (a+b)/2

return sum,avg

}

(4)go的“包”的概念

a.和python一样,把相同功能的代码放到一个目录,称之为包。

b.包可以被其他包引用。

c.main包是用来生成可执行文件,每个程序只有一个main包。

d.包的主要用途是提高代码的可复用性。

e.包的引用

Go在首行使用“package <包名>”来声明自己所在的包(主程序包为main包,也可以自定义包名),“import”引入其他的包,go自带的系统包所在的路径已经在“GOROOT”环境变量中设置好了.

可以使用“import”直接引入,而自己定义的包: package <包名> 在import导入时则需要相对路径:第三方包默在“GOROOT”和“GOPATH”环境变量所在的路径下的src目录下寻找.

(5)go文件编码规范

使用gofmt 使go文件内的代码更规范(缩进等格式更规范),使用gofmt -w 将原来的go文件修改的更规范。

到此,关于“Go语言入门基础知识有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


标题名称:Go语言入门基础知识有哪些-创新互联
本文网址:http://mswzjz.cn/article/dojieg.html

其他资讯