Golang学习笔记

本文是Golang的学习笔记,包括初识Golang的安装与Hello World程序,以及多模组项目的创建与整合。介绍了如何处理错误信息、实现随机返回欢迎格式的方法,以及进行单元测试和编译安装程序的过程。
摘要由CSDN通过智能技术生成

一、初识Golang

安装Go语言

下载安装Golang

编写hello world程序
  1. 新建文件夹go-learn作为go项目
  2. cd到go-learn文件目录,使用如下命令创建一个go.mod文件
    $ go mod init fourforfo.com/hello
    #fourforfo.com/hello 类似于 maven中的groupId/artifactId
    
  3. 编写如下的hello world代码
    package main
    //导入fmt模组,用于格式化文本,可以将文本内容输出到console,类似于java的System.out
    import "fmt" 
    
    func main() {
         
        fmt.Println("Hello, World!")
    }
    
  4. 在go-learn路径使用go run .运行hello.go文件,可以看到输出结果Hello, World!
引入外部方法
  1. 导入rsc.io/quote包,并输出quote.Go()到命令行
  2. 终端输入go mod tidy命令下载包;发现无法下载,运行go env命令发现代理网址为GOPROXY=https://proxy.golang.org,direct,国内无法访问改网站,使用go env -w GOPROXY=https://goproxy.cn,direct修改成国内的代理网址,重启vscode后再次输出go mod tidy,正常下载。
  3. 最后运行该文件即可。

二、多模组项目尝试

创建一个被调用的module——greetings
  1. cd到一个名为greetings文件夹目录下(没有greeings就创建一个),使用go mod init fourforfo.com/greetings初始化一个greetings module
  2. 粘贴如下代码到greetings目录下的greetings.go文件中
    package greetings
    import "fmt"
    // Hello returns a greeting for the named person.
    func Hello(name string) string {
         
        // Return a greeting that embeds the name in a message.
        message := fmt.Sprintf("Hi, %v. Welcome!", name)
        return message
    }
    
    如上所示:使用:=操作符可以不用声明message的类型,直接通过右边的类型来决定message的具体类型,等同于如下代码:
    message := fmt.Sprintf("Hi, %v. Welcome!", name)
    //==================等价于如下代码==================
    var message string
    message = fmt.Sprintf("Hi, %v. Welcome!", name)
    
创建一个能调用greetings的module——hello
  1. 在greetings同路径下创建一个hello文件夹,使用go mod init fourforfo.com/hello初始化一个hello module
  2. 粘贴如下代码到hello目录下的hello.go文件中
    package main
    import (
        "fmt"
        "fourforfo.com/greetings"
    )
    func main() {
         
        // Get a greeting message and print it.
        message := greetings.Hello("xiao")
        fmt.Println(message)
    }
    
  3. 执行go mod tidy发现无法找到"fourforfo.com/greetings",这是因为greetings未发布到Go工具能找到的地方,可以执行命令go mod edit -replace fourforfo.com/greetings=../greetings,让Go工具从当前父目录下greetings中寻找fourforfo.com/greetings,此时再次执行命令go mod tidy可以正常找到greetings模组,go.mod文件如下所示
    module fourforfo.com/hello
    go 1.18
    replace fourforfo.com/greetings => ../greetings
    require fourforfo.com/greetings v0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值