This commit is contained in:
songleo
2016-01-15 11:56:10 +08:00
parent fd7e301f1e
commit 7c6952155b
3 changed files with 9 additions and 9 deletions

View File

@@ -1,6 +1,6 @@
# 9.8 自定义包的目录结构、go install 和 go test
为了示范,我们创建了一个名为 uc 的简单包,它含有一个 `UpperCase` 函数将字符串的所有字母转换为大写。当然这并不值得创建一个自己包,同样的功能已被包含在 `strings` 包里,但是同样的技术也可以应用在更复杂的包中。
为了示范,我们创建了一个名为 uc 的简单包它含有一个 `UpperCase` 函数将字符串的所有字母转换为大写。当然这并不值得创建一个自己包,同样的功能已被包含在 `strings` 包里,但是同样的技术也可以应用在更复杂的包中。
## 9.8.1 自定义包的目录结构
@@ -24,7 +24,7 @@
pkg/linux_amd64
uc.a (包的目标文件)
将你的项目放在 goprograms 目录下(你可以创建一个环境变量 GOPATH详见第 2.2/3 章节:在 .profile 和 .bashrc 文件中添加 `export GOPATH=/home/user/goprograms`),而你的项目将作为 src 的子目录。uc 包 中的功能在 uc.go 中实现。
将你的项目放在 goprograms 目录下(你可以创建一个环境变量 GOPATH详见第 2.2/3 章节:在 .profile 和 .bashrc 文件中添加 `export GOPATH=/home/user/goprograms`),而你的项目将作为 src 的子目录。uc 包中的功能在 uc.go 中实现。
示例 9.6 [uc.go](examples/chapter_9/uc.go)
@@ -86,7 +86,7 @@ include $(GOROOT)/scr/Make.pkg
这个包可以通过 go test 测试。
创建一个 ud.a 的测试文件在目录下,输出为 PASS 时测试通过。
创建一个 uc.a 的测试文件在目录下,输出为 PASS 时测试通过。
在第 13.8 节我们将给出另外一个测试例子并进行深入研究。
@@ -122,7 +122,7 @@ GOFILES=\
include $GOROOT/src/Make.cmd
```
执行 gomake 编译 `ucmain.go` ucmain 目录
执行 gomake 编译 `ucmain.go` 成可执行文件ucmain
运行 `./ucmain` 显示: `USING package uc!`
@@ -147,7 +147,7 @@ include $GOROOT/src/Make.cmd
## 9.8.3 依赖系统的代码
不同操作系统上运行不同的程序是非常少见的:绝大多数情况下语言和标准库解决了大部分的可移植性问题。
不同操作系统上运行的程序以不同的代码实现是非常少见的:绝大多数情况下语言和标准库解决了大部分的可移植性问题。
你有一个很好的理由去写平台平台特定的代码,例如汇编语言。这种情况下,按照下面的约定是合理的: