go基础(2)多模块工作区入门

多模块工作区入门

在工作空间中创建hello包,进行

go mod init hello

初始化;

通过

go get golang.org/x/example/hello/reverse

添加包依赖项;

get指令用于手动从网络中获得包依赖项,也可以如 **go基础(2) **中,先在import中导入依赖包名再通过go mod tidy自动获取import中的依赖项;

hello.go内容为:

package main

import (
    "fmt"

    "golang.org/x/example/hello/reverse"
)

func main() {
    fmt.Println(reverse.String("Hello"))
}

在工作空间中初始化工作区

go work init ./hello

即会在工作空间中产生一个go.work文件,相当于整个项目的多包管理工具

git clone https://go.googlesource.com/example

现在通过git命令行(gitbash需自行下载与配置环境)将此外包拉取到本地工作空间并命名为example,通过

go work use ./example/hello

将此包依赖添加到工作区中;

最终go.work文件内容为:

go 1.18

use (
    ./hello
    ./example/hello
)

将本地工作空间的example/hello/reverse中添加新函数;

package reverse

import "strconv"

// Int returns the decimal reversal of the integer i.
func Int(i int) int {
    i, _ = strconv.Atoi(String(strconv.Itoa(i)))
    return i
}

在hello程序中使用该函数;

package main

import (
    "fmt"

    "golang.org/x/example/hello/reverse"
)

func main() {
    fmt.Println(reverse.String("Hello"), reverse.Int(24601))
}

在工作空间内go run ./hello可正常运行程序。

梗概

以上步骤先从网络中get到包,测试运行,并建立工作区。之后将此网络包拉取到本地,新增一个新的函数。最后在工作区的主函数中使用该函数。整个项目依靠go.work工作区运行。

go标准库简介


fmt包

fmt.println(string)

打印数据到终端并\n回车;

fmt.Sprintf(string,)

在输出内容中添加格式符进行替换输出;

log包

log.SetPrefix(string)

在日志打印前输出此数据;

log.setFlags(int)

设计标记;

log.Fatal(string)

日志打印后终止程序;

math包

rand.Intn(int)

获得[0,n]的任意整数;

error包

errors.New(string)

获得一个报错信息;

regexp包

REG:=regexp.MustComplie(string)

输入一个正则表达式获得一个匹配项;

REG.MatchString(string)

对传入的字符串参数进行匹配项搜索,返回布尔值;

testing包

*testing.T

作为测试函数的传参类型,一般测试函数传参格式为(T *testing.T);

t.Fatalf(string,)

用于测试函数的日志输出,可在输出内容中添加格式符输出,日志打印后输出一个回车符\n终止程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值