首先初始化模块并创建go.mod文件,然后在项目中建立mathutils包并实现Add和Multiply函数,最后在main.go中导入该包并调用其函数完成计算与输出。
在go语言中,创建自定义包和模块是组织代码、提升复用性和维护性的关键方式。从Go 1.11开始引入的模块(module)机制,让依赖管理变得更加清晰和可控。下面通过一个简单示例,展示如何创建并使用自定义包与模块。
初始化模块
首先,在你的项目目录中初始化一个新的Go模块。
mkdir myproject && cd myproject
go mod init example/myproject
这会在当前目录生成一个 go.mod 文件,内容类似:
module example/myproject <p>go 1.21
立即学习“go语言免费学习笔记(深入)”;
这个文件定义了模块的名称和使用的Go版本。
创建自定义包
在项目根目录下创建一个名为 mathutils 的子目录,并在其中新建一个Go文件:
mkdir mathutils
touch mathutils/calc.go
编辑 calc.go,写入以下内容:
package mathutils <p>// Add 返回两个整数的和 func Add(a, b int) int { return a + b }</p><p>// Multiply 返回两个整数的积 func Multiply(a, b int) int { return a * b }
注意:函数名首字母大写,才能在包外被访问(Go通过大小写控制可见性)。
在主程序中使用自定义包
回到项目根目录,创建 main.go:
touch main.go
编辑内容如下:
package main <p>import ( "fmt" "example/myproject/mathutils" )</p><p>func main() { a, b := 5, 3 fmt.Printf("%d + %d = %dn", a, b, mathutils.Add(a, b)) fmt.Printf("%d * %d = %dn", a, b, mathutils.Multiply(a, b)) }
这里导入的是模块路径下的 mathutils 包,而不是相对路径。
运行程序
执行以下命令构建并运行:
go run main.go
输出结果为:
5 + 3 = 8 5 * 3 = 15
Go会自动解析模块内包的引用,无需额外配置。
基本上就这些。只要遵循模块命名规则、正确组织目录结构,并注意标识符的可见性,就能轻松创建和使用自定义包。这种方式适用于本地开发,也便于后续发布为可复用的公共模块。不复杂但容易忽略。
评论(已关闭)
评论已关闭