go语言学习笔记——godoc的使用(超详细,含示例文件)
godoc使用教程
注释规范
注释符//后面要加空格, 例如: // xxx
在注释符要缩进的话,第二行注释符后面的空格要比上一行的空格多一个example:// 123// 123
注释要紧跟package、const、type、func这些关键字,这样子才会被显示
// 功能: 函数H的注释// 参 数:// h1 : 说明参数值// h2 : 运算的数字// 返回值:// reValue : 返回值//你会发现函数H的功能注释没有显示,这是因为功能函数注释与关键字func之间空了一行func H(h1 string, h2 string) (reValue string) {fmt.Println(h1, h2)return h1}
package的注释最好不好超过3行,不过就算超过3行也没有关系。这里只是做一个规范而已。如果对于pkg描述的注释有很多行的时候,我们可以新建一个doc.go,这个文件用于对package包的描述
同一目录下的包可以由很多个文件组成,如果每个文件都有对package进行注释的话,godoc会自动将所有注释"按照文件名的字母数序"进行合并
详细等会看实例文件
在无效注释中以BUG(who)开头的注释, 将被识别为已知bug, 显示在bugs区域
// BUG(who): 因为前面有BUG(who)这个关键字,所以这句注释就算没有紧跟关键字不会被隐藏掉
在终端查看
在终端,进入要查看的包的目录go doc
显示当前包的文档
这里查看的是包名的文档,以及所有的函数名字跟变量类型名
example:go docterminal show:package test // import "test/testdoc"这个是a.go的包名的描述At 20191017 by Baiyu---a.go end---这个是在doc.go 文件中的内容在Go的源代码中在Mac系统中在类Unix系统中在Windows系统中---doc.go end---这个是在testgodoc.go文件的内容 package Name: testdescribe: 程序的入口---testgodoc.go end---这个是z.go 的包名描述---z.go end---const Email ...const Baiyu = "baiyu"func H(h1 string, h2 string) (reValue string)func Test(param1 string, inter int) (k string)func Z()type Computer struct{ ... }type Person struct{ ... }BUG: 这个注释会生成在文档最后后面,同时因为紧跟着fun Z,所以在上面的func列表里面也有显示功能: 生成Z签名BUG: 因为前面有BUG(who)这个关键字,所以这句注释就算没有紧跟关键字不会被隐藏掉BUG: BUG(6):格式正确,所以这句注释就算没有紧跟关键字不会被隐藏掉,前面的BUG():、BUG6:、BUG:都是不正确的BUG(who)命名
go doc <pkg>.<func>
查看pkg包下面的func函数的注释
example:go doc test.Testterminal show:package test // import "test/testdoc"func Test(param1 string, inter int) (k string)功能: 测试函数参 数:param1 : 说明参数值inter : 运算的数字返回值:k : 返回值
如果想查看完整的源码go doc -src <pkg>.<func>
example: go doc -src test.Test terminal show:package test // import "test/testdoc"// 功能: 测试函数// 参 数:// param1 : 说明参数值// inter : 运算的数字// 返回值:// k : 返回值func Test(param1 string, inter int) (k string) {fmt.Println("测试函数")return param1}
在浏览器上查看
使用命令godoc -http=:6060
然后在打开浏览器的,在url输入localhost:6060/pkg
或者127.0.0.1:6060/pkg
就可以查看到你本地的所有包的信息了
如果你想要找到你特定的包名的话localhost:6060/pkg/<path>/<packageName>
或者127.0.0.1:6060/pkg/<path>/<packageName>
<path>
是你/src下包所在的路径
<packageName>
是包名
导出godoc文档为HTML
使用命令godoc -url "http://localhost:6060/pkg/<pkg>/<packageName>/" > <packageName>.html
<pkg>
是你包所在的文件夹
<packageName>
是你的包名
导出来的是纯html文件,没有样式表,不过也有可能可以导出,但是我目前没有找到,如果有找到的朋友也可以交流一下
不过我也有把对应的样式文件给导出来了
下载地址https://github.com/BaiYu96/golandLearn/tree/master/learn_doc/stylefile
然后把html文件里面的css跟js指定的路径修改好就可以
教程示例文件
下载地址https://github.com/BaiYu96/golandLearn/tree/master/learn_doc/test
把test文件夹放到你$GOPATH/src/
目录下
go语言学习笔记——godoc的使用(超详细,含示例文件)相关推荐
- 10-1Python学习笔记 10-2C语言学习笔记 : 在文本编辑器中新建一个文件, 写几句话来总结一下你至此学到的Python知识
10-1 Python学习笔记 : 在文本编辑器中新建一个文件, 写几句话来总结一下你至此学到的Python知识, 其中每一行都以"In Python you can"打头. 将这 ...
- matplotlib学习笔记——入门版(超详细)
最近才肝完的matplotlib入门教程,学习笔记顺便写上.欢迎大家在评论区补充.提问-- print('--------------------------------------------mat ...
- 学习笔记(06):2019网络安全超详细入门教程-基本命令
立即学习:https://edu.csdn.net/course/play/25182/295582?utm_source=blogtoedu
- TypeScript 学习笔记(十万字超详细知识点总结)
- 【Go语言 · 学习笔记】
文章目录 Go语言 · 学习笔记 一.Go包管理 1. 什么是Go语言中的包 2. 包的命名 3. main包 4. 导入包 5. 远程包导入 6. 命名导入 7. 包的init函数 二.Go开发工具 ...
- 梓益C语言学习笔记之链表&动态内存&文件
梓益C语言学习笔记之链表&动态内存&文件 一.定义: 链表是一种物理存储上非连续,通过指针链接次序,实现的一种线性存储结构. 二.特点: 链表由一系列节点(链表中每一个元素称为节点)组 ...
- 6.方法(go语言学习笔记)
6.方法(go语言学习笔记) 目录 定义 匿名字段 方法集 表达式 1. 定义 方法是与对象实例绑定的特殊函数. 方法是面向对象编程的基本概念,用于维护和展示对象的自身状态.对象是内敛的,每个实例对象 ...
- 梓益C语言学习笔记之指针
梓益C语言学习笔记之指针 一.32位平台下,地址是32位,所以指针变量占32位,共4个字节 二.内存单元的地址即为指针,存放指针的变量称为指针变量,故:"指针"是指地址,是常量,& ...
- c语言中void arrout,c语言学习笔记(数组、函数
<c语言学习笔记(数组.函数>由会员分享,可在线阅读,更多相关<c语言学习笔记(数组.函数(53页珍藏版)>请在人人文库网上搜索. 1.数组2010-3-29 22:40一维数 ...
最新文章
- 初学Python,我给你总结了常见的17个错误
- 预测过去?DeepMind用AI复原古希腊铭文,登Nature封面
- Error: Could not find or load main class org.apache.spark.deploy.yarn.ExecutorLauncher
- 12) 十分钟学会android--APP通信传递消息之简单数据传输
- js——window.open用法
- spring源码:循环依赖源码学习
- 单片机音频谱曲软件_单片机音乐代码转换软件(Music Encode)
- 关于彻底卸载流氓 “趋势科技防毒网络版客户端”最详细步骤,亲测有效
- 提高工作效率的软件推荐——我的ABC软件工具箱 6.0 最新版上线啦
- 复盘模型_如何运用MT4软件进行复盘,提高水平
- 屏幕小于6英寸的手机_6寸手机好不好用 手机屏幕尺寸多大合适
- 如何长久维持远距离恋情?
- 使用财务系统所用到的会计基础知识(一)
- 【蓝桥杯大赛】简单回忆一下我的蓝桥杯比赛历程
- python爬取58同城租房信息_分页爬取58同城租房信息.py
- ubuntu中进行复制粘贴
- 【低功耗蓝牙】⑤ 蓝牙HID协议
- matlab目标跟踪物流应用,目标跟踪系统的MATLAB 源程序包
- PWA——下一代的web应用模型
- 暑假出游 |近视配镜首选变色镜片
热门文章
- 钉钉微应用PC端开发
- 数据仓库实践杂谈-(二)-数据分层
- pip安装tensorflow报错:could not find a version that satisfies the requirement grpcio>=1.8.6
- 【无标题】2022施工员-设备方向-通用基础(施工员)考试试题及模拟考试
- 解决Cannot allocate memory服务器内存不足问题
- vba 统计Word 字数、页数等信息
- 菜鸟的草缸 篇二:开缸种草篇
- luogu1498:南蛮图腾:分治?复制!
- 分享CFA考试必须杜绝的违规行为!
- 移动端事件及事件应用