golang除了语言有一定的规范外,对于文档的生成也是非常不错的。仅仅要按go的格式来写的程序,都能够非常easy的生成文档。

godoc命令介绍:
http://golang.org/cmd/godoc/
godoc blog(英文:
http://blog.golang.org/2011/03/godoc-documenting-go-code.html

遵守几个规则:
 凝视须要紧贴相应的包声明和函数之前,不能有空行。
 假设凝视内要有空行。应该使用空白凝视行。
 开发人员能够直接使用//BUG(author):的方式记录该代码片段中的遗留问题。

实际操作样例:
最经常使用的:
 godoc –http=”:8080”
 这样就打开了跟golang.org一样的站点,假设不能訪问golang.org的时候就能够这样訪问,并且建议一般平时就这样訪问速度更快。
 并且pkg里面会有全部安装过的包。如:原来 go get labix.org/v2/mgo 就会有mgo的包 或者go install 到$GOROOT/src/pkg中也是能够查看到的。

终端下使用:
 godoc fmt Println
 就是打印fmt.Println这个函数的用法,假设习惯在终端命令行下能够如此使用

查看外部的包:
godoc -http=”:8080” -path=”.”
由于godoc默认是去$GOROOT/src/pkg读取的,假设有project不在这个以下的。我们能够使用path
 这有几个注意的问题:
  1.假设使用. pkg里面仅仅会有这个包的文档,不会有原来go自带的。

使用绝对路径才会都有。
2.path不能以/ 结尾不然会报错invalid -path argument: “/root/go/” has no final element
3.文档显示是以path最后一个文件夹为包名。如文件夹结构为 project/src/todolist 假设path指到project 这一层 包的显示是 project src todolist 三层 假设指向src 就是src todolist 两层 仅仅是显示的问题不影响使用,只是看着比較的别扭。好像没有太好的办法
  4.全部上面的这些參数假设观察细致会发现有的是–两杠和-一杠,两种方法都是能够接受的。

http://www.ohlinux.com/archives/813/ shell python golang 參数传递的对照。


转载自http://bbs.studygolang.com/thread-91-1-1.html