Golang编程之入门篇

Stella981
• 阅读 597

1、Golang环境配置

安装包下载地址:https://golang.google.cn/dl/

GOPATH

Go 的工作空间,就是我们的开发和依赖包的目录(例如:我的是 E:\csyz\golang) ,此目录需要手动配置到系统环境变量。

Go 的工作空间是一个目录层次结构,其根目录包含三个子目录:

  • src:包含 Go 源文件;

  • pkg:包含包对象,编译好的库文件 ;

  • bin:包含可执行命令。

注意:

需要将GOPATH 路径,手动写入到系统环境变量;

不要把 GOPATH 设置成 Go 的安装路径;

你自己创建依赖的package,也要放到GOPATH 目录下,这样才能够被引用到。

配置好之后,通过 go env 命令来查看Go环境是否配置正确:

Golang编程之入门篇

2、Golang常用命令简介

2.1、go build

go build 命令用于编译我们指定的源码文件或代码包以及它们的依赖包,可检查是否存在编译错误,如果被编译的是main包,会生成可执行文件。

  1 #编译
  2 go build main.go
  3 #运行
  4 ./main

2.2、go run

go run 命令用于编译并直接运行程序,它会生成一个临时文件(但不是一个标准的可执行文件),直接在命令行打印输出程序执行结果,方便用户调试。

  1 go run main.go

2.3、go install

go install 命令用于编译安装,可以作用于 main 包和非 main 包,首先编译导入的包文件,所有导入的包文件编译完才会编译主程序,然后将编译后的生成的可执行文件存放到工程的 bin 目录下,将生成的归档文件(即静态链接库)存放到工程的 pkg 目录下。使用方式类似于 go build,可以在某个代码包目录下直接使用,也可以指定代码包使用。

2.4、go clean

go clean 命令用于删除执行其它命令时产生的文件和目录。

2.5、go test

go test 命令用于进行单元测试的工具,单元测试代码建议与被测试代码放在同一个代码包中,并以 "_test.go" 为后缀,测试函数建议以 "Test" 为名称前缀。该命令可以对代码包进行测试,也可以指定某个测试代码文件运行(要一并带上被测试代码文件)。

2.6、go get

go get 命令用于动态获取远程代码包,如果是从GitHub上获取,则需要现安装git,如果是从Google Code上获取,则需要安装hg。

  1 #从GitHub上安装GoCode,(-u flag for “update”)
  2 go get -u github.com/nsf/gocode

2.7、go fmt

go fmt 命令用于格式化源码,有的IDE保存源码时自动执行该命令,也可手动执行它。

  1 go fmt main.go

3、第一个Golang程序

  1 package main
  2 
  3 import "fmt"
  4 
  5 func main() {
  6     fmt.Println("Hello,world!")
  7 }
  8
点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
2年前
Opencv中Mat矩阵相乘——点乘、dot、mul运算详解
Opencv中Mat矩阵相乘——点乘、dot、mul运算详解2016年09月02日00:00:36 \牧野(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fme.csdn.net%2Fdcrmg) 阅读数:59593
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
2年前
go——安装与设置
1.下载安装  官方下载地址:https://golang.org/dl/(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fgolang.org%2Fdl%2F)  备用下载地址:https://golang.google.cn/dl/(https://www.os
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这