Go笔记-基础

Go基础

1、安装【基于Windows】

建议下载.msi文件,安装时默认安装在C:\Go\文件夹下(go1.10版本)。
安装完毕后会自动在系统环境变量的Path中写入C:\Go\bin,并帮我们建立了一个GOROOT的变量,值为C:\Go\。

然后我们打开黑窗口(cmd,命令行)输入:go version,出现相应的go的版本则说明安装配置成功。
image

2、路径

我开发工具使用的是GoLand,开发前还需要进行下简单配置,打开GoLand在File->Settings->Go中可以看到我们需要进行GOROOT和GOPATH的配置:

GOROOT

就是go的安装路径了,C:\Go,如下图:
image

GOPATH

这个暂时我们设置为我们go工程的目录,比如我们的go工程为D:\Works_Go\Gogogo,那么如下图:
image
在这个工程目录中我们一般有三个文件夹:

src:该文件夹主要来存放我们的代码源文件,需手动创建。
bin:该文件夹一般会存放编译后生成的 .exe 文件,无需手动创建。(如果将该文件写入到系统变量的Path中,
那么在编译完后对于生成的xxx.exe的文件我们可以直接在黑窗口中敲入xxx去执行,这个bin目录也可以称为 GOBIN目录)
pkg:该文件夹一般会存放编译后生成的 .a 文件,无需手动创建。

【注意:GOPATH目录是Go项目的根目录,一个Go项目可以包含多个应用。如果你是做安卓开发的(我是),这一点要区分下,一个安卓项目一般包含一个应用,
但可以有多个模块。当然你也可以设置多个GOPATH来对应多个Go项目,不过貌似做多个GOPATH的话后面开发会有不方便】

GOBIN

go install命令执行后编译结果存放的路径,见GOPATH中的bin目录。

3、命令

这里以我的工程讲解命令,代码文件很简单,工程结构如下图所示:
image
bin、pkg目录已经说过了,里面没有内容。doc是我写文档的文件夹。src是源代码文件夹(src下的others文件夹我们不去管它,那是我练习时写的代码,跟教程无关)。

say.go中的源码如下:

package utils

import "fmt"

func SayHello() {
    fmt.Println("Hello !")
}

func SayHi() {
    fmt.Println("Hi !")
}

sayHello.go中源码如下:

package main

import "myApp/utils"

func main() {
    utils.SayHello()
}

go run

运行命令源码文件
Go源码文件包括:命令源码文件、库源码文件和测试源码文件。命令源码文件属于main包且文件中有main()函数。
命令后跟完整文件名,在编辑器底部打开Terminal进入控制台并输入如下命令
go run src/myApp/sayHello.go,编译完后便会输出相应的内容。如下图所示:
image
因为我们在项目的根目录下,所以当编译的sayHello.go文件的时候需要写出他的路径。

go build

编译并安装自身包和依赖包

命令后跟完整文件名,在编辑器底部打开Terminal进入控制台并输入如下命令
go build src/myApp/sayHello.go,编译完毕后在项目的根目录下会出现一个sayHello.exe的文件。

命令后跟目录名,例如在控制台输入
go build myApp,编译完毕后在项目的根目录会出现myApp.exe文件。

go install

安装自身包和依赖包

命令后跟目录名,例如在控制台输入
go install myApp,编译完毕后会在项目的bin文件夹下生成一个main.exe文件。
然后我们直接在控制台输入
myApp,那么控制台会直接输出我们打印的结果(如果不能成功请检查是否将该bin目录添加到了系统变量Path中),如下图所示:

image

例如在控制台输入
go install myApp/utils,编译完毕后会在项目的pkg文件夹中生成utils.a文件(注:bin目录下的myApp.exe文件是上一步运行go build myApp命令产生的),示例如下:

image

区别在哪里呢? myApp下包含一个有main包以及main函数的sayHello.go主文件。而utils文件夹下只是库文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值