Golang环境搭建及打包和工具链详解

 更新时间:2023年04月15日 10:33:05   作者:高自期许  
这篇文章主要介绍了Golang环境搭建及打包和工具链,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

一、环境搭建

从https://golang.google.cn/dl/下载安装即可

新建GO_HOME 系统环境变量,指向go的安装目录
在终端输入go dev即可测试有无安装成功

二、包

所有Go程序的程序都会组织成若干组文件,每组文件被称为一个包。每个包的代码都可以作为很小的复用单元,被其他项目引用。
①所有的go文件都应在第一行声明自己所属的包。每个包都在一个单独的目录里。这意味着同一个目录下的所有.go文件都必须声明同一个包名。
②给包命名时都应该使用简洁、清晰且全小写的名字。
③main包具有特殊意义。Golang的编译程序会试图把这种名字的包编译为二进制可执行文件。所有的Golang编译的可执行程序都必须有一个名叫main的包。
执行下面这段代码

package main

import "fmt"

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

在该代码目录下执行go build 文件名。可以看到生成了可执行文件。

三、导入

对于import导入的内容
①标准库中的包会在安装Go的位置找到,开发者创建的包会在GOPATH环境变量指定的目录里查找。还可以导入远程路径比如github上的包
②导入一个不在代码中使用的包会导致编译失败,可以在前面加下划线进行标注。

四、init函数

每个包可以包含任意多的init函数,这些函数都会在程序执行开始时调用,在main之前调用

五、一些常用go命令

go build hello.go 编译生成可执行文件
go clean hello.go 删除编译生成的可执行文件
go run hello.go 先编译后执行
go vet hello.go 捕获一些常见错误
go fmt 代码格式化
go doc 在终端打开一个文档
godoc -http=:6060在端口启动一个web服务器,可以使用http://localhost:6060打开

到此这篇关于Golang环境搭建及打包和工具链的文章就介绍到这了,更多相关go打包和工具链内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 浅谈Golang 嵌套 interface 的赋值问题

    浅谈Golang 嵌套 interface 的赋值问题

    这篇文章主要介绍了浅谈Golang 嵌套 interface 的赋值问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • Go语言中json序列化优化技巧

    Go语言中json序列化优化技巧

    在Go语言开发中,JSON因其简洁和广泛的兼容性,通常被用作数据交换的主要序列化格式,本文将探讨JSON希望对大家有所帮助序列化的一些局限性,也算是一个小坑吧,并给出一些常用的解决方案,
    2024-11-11
  • 浅析Go语言中的Range关键字

    浅析Go语言中的Range关键字

    Range是go语言中很独特的一个关键词,也相当好用。下面就跟着小编来再聊聊这个Range关键字,有需要的朋友们可以参考借鉴。
    2016-09-09
  • Golang解析yaml文件的方法小结

    Golang解析yaml文件的方法小结

    Go 语言没有内置解析 yaml 文件的功能,实现 yaml 的解析可以使用第三方库,下面我们就来看看如何使用opkg.in/yaml.v2 和 gopkg.in/yaml.v3实现解析yaml吧
    2024-11-11
  • golang pprof 监控goroutine thread统计原理详解

    golang pprof 监控goroutine thread统计原理详解

    这篇文章主要为大家介绍了golang pprof 监控goroutine thread统计原理详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • Go语言中Struct与继承与匿名字段和内嵌结构体全面详解

    Go语言中Struct与继承与匿名字段和内嵌结构体全面详解

    这篇文章主要介绍了Go语言中Struct与继承与匿名字段和内嵌结构体,Go语言中通过结构体的内嵌再配合接口比面向对象具有更高的扩展性和灵活性,感兴趣的可以了解一下
    2023-04-04
  • GoLang逃逸分析讲解

    GoLang逃逸分析讲解

    我们都知道go语言中内存管理工作都是由Go在底层完成的,这样我们可以不用过多的关注底层的内存问题。本文主要总结一下 Golang内存逃逸分析,需要的朋友可以参考以下内容,希望对大家有帮助
    2022-12-12
  • Go语言读写锁RWMutex的源码分析

    Go语言读写锁RWMutex的源码分析

    本篇文章我们将一起来学习下Go语言中的读写锁sync.RWMutex。文中的示例讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-10-10
  • Golang中的Interface详解

    Golang中的Interface详解

    本文详细讲解了Golang中的Interface,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Go语言遍历目录的三种方法举例

    Go语言遍历目录的三种方法举例

    学习io之后,尤其是文件操作,我们就可以遍历给定的目录了,这篇文章主要给大家介绍了关于Go语言遍历目录的三种方法,分别是ioutil.ReadDir、filepath.Walk以及filepath.Glob,需要的朋友可以参考下
    2023-11-11

最新评论