这篇文章主要介绍“Go语言入门基础知识有哪些”,在日常操作中,相信很多人在Go语言入门基础知识有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go语言入门基础知识有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的裕民网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
一、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语言入门基础知识有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!