初识golang - Go语言中文社区

初识golang


go语言是Google于2009年发布的一款编程语言,设计者之一的Ken Thompson名声显赫,他是图灵奖获得者,同时是UNIX创始人之一。go语言语法简洁,运行效率高,由于之前有很多语言的经验可以借鉴,go语言尽可能解决以前的编程语言存在的问题并引入了自己的优势。最近学习了go语言,总的来说,go语言解决了很多C语言开发中的痛点,同时保留了C语言的语法简洁的特点,与Java,C++等语言形成了鲜明对比。


目前使用go语言开发的项目已经有不少,最知名的当属Docker,另外,go还有很多Web框架可以使用,如beego,macaron,gin等。可以看到,go语言的生态圈正在逐步形成。国外Google,Facebook等使用GO语言进行开发,BATJ的一些新产品已经开始使用,七牛云则是国内go语言的主要推广者。由于中国是使用go语言的大户,所以你会惊奇的发现,很多go语言开源项目的官网,都会提供简体中文的网页,而且还有很多国人开发的项目,如beego框架。


个人感觉go语言适合有编程基础的人去学习,也就是入门门槛略高。如果长期使用过C语言开发,使用go可能会更有感触,除去添加了内存管理机制,go语言还直接将C语言面向对象开发的一些思路直接融入到了go的语法中。


go语言在语法层面对编码习惯做出了很多限制,比如无用的包引用,定义变量但没有使用等都会导致编译错误,go还提供了丰富的工具,如gocode实现代码补全,gofmt用来对代码格式进行修正等等。


go语言开发建议首先使用命令行进行编译,熟悉之后,使用一些IDE,本人之前使用了Eclipse+Goclipse插件,但是感觉有些臃肿,最近尝试了Atom编辑器加各种插件,还是很好用的,推荐大家使用。


下面就来看看如何配置go开发环境,为方便使用,这里仅讲解Windows下的配置,Linux下与此类似,只是配置环境变量的方式不同,熟悉Linux的去配置也不是问题。


首先下载go的安装包,国内的话,可以在中文社区下载

https://studygolang.com/dl


下载对应版本的安装包后,安装即可,安装完成,需要配置环境变量

GOROOT:go的安装位置,比如我安装在了D:Go

GOPATH:go项目的位置,不可以与GOROOT一样,可以配置多个GOPATH,但是使用go get命令获取其他包时候,默认下载到第一个GOPATH下,个人一般按照当前操作的项目去修改GOPATH,这样可以为项目形成一个隔离的开发环境,防止全局引用包导致的依赖问题。如果发现Windows用户环境变量下有GOPATH,可以删掉,配置在系统变量中。GOPATH下的目录结构为:

  • bin:编译生成的文件放置在这个目录;
  • pkg:go编译生成的中间文件;
  • src:go语言源码以及依赖包;


其他环境变量可以使用go env命令查看,为了方便使用,一般将GOROOT/bin和GOPATH/bin也加入到Path环境变量,之后在命令行输入go version,如果显示出版本信息,配置就完成了。


现在我们编写一个go的Hello World,新建一个目录D:HelloWorld,然后在HelloWorld目录中创建src,bin,pkg三个目录,将GOPATH改为D:HelloWorld,这样,我们的项目目录就配置好了。在src目录中新建文件hello_world.go,内容如下:


package main

import (
	"fmt"
)

func main() {
	fmt.Println("Hello World!")
}

package main指明包名为main,go语言必须有一个main包,且main函数应该在这个包中。import引入包的路径,我们使用了标准包fmt,用来输出。main函数就是程序的入口函数,我们打印了Hello World。


命令行进入到目录HelloWorldsrc中,执行命令直接运行并输出Hello World

go run hello_world.go


也可以编译生成可执行文件hello_world.exe

go build hello_world.go


下面简单的说明一下使用Atom如何配置go开发环境,安装Atom,打开Atom后,需要安装几个插件:

go-config——Atom的go插件,我们做go开发,就要安装这个


atom-beautify——用来美化代码,可以配置快捷键

'atom-text-editor':

    'alt-ctrl-l': 'atom-beautify:beautify-editor'


tokamak-terminal——终端插件


file-icons——文件前面添加小图片,表示不同类型的文件


git-plus——使用gitIDE

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/yjp19871013/article/details/80949527
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2019-08-27 18:26:59
  • 阅读 ( 3014 )
  • 分类:Go

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢