go安装
goland安装
参考:http://c.biancheng.net/view/6124.html
认识go
参考:https://www.lanqiao.cn/courses/834/learning/?id=2991
首先看一个go的一个demo文件。
01 package main
02
03 import (
04 "log"
05 "os"
06
07 _ "./matchers"
08 "./search"
09 )
10
11 // init在main之前调用
12 func init() {
13 // 将日志输出到标准输出
14 log.SetOutput(os.Stdout)
15 }
16
17 // main 是整个程序的入口
18 func main() {
19 // 使用特定的项做搜索
20 search.Run("president")
21 }
1、每个可执行的Go程序都有两个明显的特征。
一个特征是声明为main的函数。构建成需在构建可执行文件时,需要找到这个已经声明的main函数,把它作为程序的入口。
第二个特征是程序的第01行的包名main。main 函数保存在名为 main 的包里。如果 main 函数不在 main 包里,构建工具就不会生成可执行的文件。
2、Go语言的每个代码文件都属于一个包,main.go也不例外。包这个特性对于Go语言来说很重要。
3、关键字import就是导入一段代码,让用户可以访问其中的标识符,如类型、函数、常量和接口。
4、所有处于同一文件夹里的代码文件,必须使用同一个包名。安装惯例,包和文件夹同名。一个包定义一组编译后的代码,每段代码都描述包的一部分。
5、导入包时,导入的路径前面如果有一个下划线(例如demo文件中的第7行)。表示让go语言对包做初始化操作,但是并不使用包里的标识符。为了让程序可读性更强,Go编译器不允许声明导入某个包却不使用。下划线让编译器接受这类导入,并且调用对应保内的所有文件里定义的init函数。
6、init函数。程序中每个代码文件里的init函数都会在main函数执行前调用。这个init函数将标准库里日志类的输出,从默认的标准错误(stderr),设置为标准输出(stdout)设备。
go mod
模块是相关go包的集合。modules是源代码交换和版本控制的单元。
go命令直接使用modules,包含记录和解析对其他模块的依赖性。
modules替换旧的基于gopath的方法来指定在给定构建中使用哪些源文件。
goland怎么设置go mod?参考:goland设置go module
使用 GoLand 启动 运行 (调试)Go 项目
参考:https://studygolang.com/articles/22075?fr=sidebar