回到简体

This commit is contained in:
chai2010
2016-02-15 11:06:34 +08:00
parent 9e878f9944
commit 2b37b23285
177 changed files with 2354 additions and 2354 deletions

View File

@@ -1,8 +1,8 @@
### 10.7.4. 包文
### 10.7.4. 包文
Go言的編碼風格鼓勵爲每個包提供良好的文。包中每個導出的成和包明前都應該包含目的和用法明的註釋
Go言的编码风格鼓励为每个包提供良好的文。包中每个导出的成和包明前都应该包含目的和用法明的注释
Go言中包文檔註釋一般是完整的句子,第一行是包的摘要明,註釋後僅跟着包聲明語句。註釋中函數的參數或其它的標識符併不需要外的引或其它標記註明。例如下面是fmt.Fprintf的文檔註釋
Go言中包文档注释一般是完整的句子,第一行是包的摘要明,注释后仅跟着包声明语句。注释中函数的参数或其它的标识符并不需要外的引或其它标记注明。例如下面是fmt.Fprintf的文档注释
```Go
// Fprintf formats according to a format specifier and writes to w.
@@ -10,13 +10,13 @@ Go語言中包文檔註釋一般是完整的句子第一行是包的摘要説
func Fprintf(w io.Writer, format string, a ...interface{}) (int, error)
```
Fprintf函格式化的細節在fmt包文中描述。如果註釋後僅跟着包聲明語句,那註釋對應整個包的文。包文檔對應的註釋隻能有一個(譯註:其可以有多,它們會組合成一包文檔註釋),包註釋可以出在任何一源文件中。如果包的註釋內容比較長,一般放到一個獨立的源文件中fmt包註釋就有300行之多。這個專門用於保存包文的源文件通常叫doc.go。
Fprintf函格式化的细节在fmt包文中描述。如果注释后仅跟着包声明语句,那注释对应整个包的文。包文档对应的注释只能有一个(译注:其可以有多,它们会组合成一包文档注释),包注释可以出在任何一源文件中。如果包的注释内容比较长,一般放到一个独立的源文件中fmt包注释就有300行之多。这个专门用于保存包文的源文件通常叫doc.go。
好的文檔併不需要面面俱到,文本身應該是簡潔但可不忽略的。事Go言的格更喜歡簡潔的文檔,併且文也是需要像代碼一樣維護的。對於一組聲明語句,可以用一個精鍊的句子描述,如果是而易的功能則併不需要註釋
好的文档并不需要面面俱到,文本身应该是简洁但可不忽略的。事Go言的格更喜欢简洁的文档,并且文也是需要像代码一样维护的。对于一组声明语句,可以用一个精炼的句子描述,如果是而易的功能则并不需要注释
在本中,要空間允許,我之前很多包明都包含了註釋文檔,但你可以從標準庫中發現很多更好的例子。有兩個工具可以到你。
在本中,要空间允许,我之前很多包明都包含了注释文档,但你可以从标准库中发现很多更好的例子。有两个工具可以到你。
首先是`go doc`命令,命令打印包的明和每個成員的文檔註釋,下面是整包的文
首先是`go doc`命令,命令打印包的明和每个成员的文档注释,下面是整包的文
```
$ go doc time
@@ -34,7 +34,7 @@ type Time struct { ... }
...many more...
```
或者是某個具體包成員的註釋文檔
或者是某个具体包成员的注释文档
```
$ go doc time.Since
@@ -44,7 +44,7 @@ func Since(t Time) Duration
It is shorthand for time.Now().Sub(t).
```
或者是某個具體包的一方法的註釋文檔
或者是某个具体包的一方法的注释文档
```
$ go doc time.Duration.Seconds
@@ -53,7 +53,7 @@ func (d Duration) Seconds() float64
Seconds returns the duration as a floating-point number of seconds.
```
命令不需要入完整的包入路或正的大小。下面的命令打印encoding/json包的`(*json.Decoder).Decode`方法的文
命令不需要入完整的包入路或正的大小。下面的命令打印encoding/json包的`(*json.Decoder).Decode`方法的文
```
$ go doc json.decode
@@ -63,12 +63,12 @@ func (dec *Decoder) Decode(v interface{}) error
it in the value pointed to by v.
```
第二工具名字也叫godoc它提供可以相互交叉引用的HTML面,但是包含和`go doc`命令相同以及更多的信息。10.1演示了time包的文11.6節將看到godoc演示可以交互的示例程序。godoc的在線服務 https://godoc.org ,包含了成韆上萬的開源包的索工具。
第二工具名字也叫godoc它提供可以相互交叉引用的HTML面,但是包含和`go doc`命令相同以及更多的信息。10.1演示了time包的文11.6节将看到godoc演示可以交互的示例程序。godoc的在线服务 https://godoc.org ,包含了成千上万的开源包的索工具。
你也可以在自己的工作區目録運行godoc服務。運行下面的命令,然後在瀏覽器査看 http://localhost:8000/pkg 面:
你也可以在自己的工作区目录运行godoc服务。运行下面的命令,然后在浏览器查看 http://localhost:8000/pkg 面:
```
$ godoc -http :8000
```
其中`-analysis=type``-analysis=pointer`命令行標誌參數用於打開文檔和代碼中關於靜態分析的果。
其中`-analysis=type``-analysis=pointer`命令行标志参数用于打开文档和代码中关于静态分析的果。