-
Notifications
You must be signed in to change notification settings - Fork 74
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Golang项目文档完善 #27
Comments
支持适当重构代码,确实有些模块的接口需要调整下了 😀 🙌 👍 不过这里 bluetooth 的 Agent 的接口应该不能隐藏吧,不然无法导出 DBus 接口,也就无法被 bluez 调用... |
可以导出Dbus的,只要agent的方法是大写的。 |
明白了 |
有一个工具叫做 godocdown[1],可以导出 go doc 为 github markdown 格式,使用方法也很简单
不过如果考虑到其他项目,如 qt/libdui,好像没有直接导出文档为 markdown 的工具,网上有一种方法是先通过 doxygen 生成 xml,然后再用 pandoc 转换为 markdown(还需要做额外处理?),但不知效果怎样[2],所以 API 文档的展现方式还有待确定。 |
分开做吧. 我们可以先把golang的项目整理出来. 这样先促进代码本身的注释以及结构调整. 现在麻烦点的事情是决定在哪里放这些online的API文档. 最好能结合CI之类的. 融入到开发中,方便前后端沟通. |
@fasheng golang的文档就用gowalker.org来展示吧,展示效果比godoc.org好一些。另外也兼容golang.org. gowalker.org支持展示在包根目录下放置的README.md |
可以,回头我把链接加到 wiki |
不过一个索引页面我觉得还是有必要的吧. |
要不再docs.deepin.io下放一个索引页面,类似 |
恩. 不过不知道怎么搭建. |
golang的可以只放一个索引,这个索引可以人工维护。 |
主要是dde-daemon和go-lib的文档需要完善。
完善文档的过程也是一个重构代码的过程。今天整理了dde-daemon的蓝牙模块的文档,发现暴露了很多不应该暴露的接口和数据结构,一并做了修复,可以参考下这里:https://cr.deepin.io/#/c/10640 (其实主要是修改大小写 😃 )。
dde-daemon主要是对外提供DBus接口,只有需要出现在dbus中的struct和方法才需要导出,其他的数据结构都应该作为内部struct。下图是整理前的导出文档和整理后的对比:
对于一些实在需要导出文档,又不会出现在dbus接口中的方法,中午简单讨论了一下,可以放在一个dde-daemon-dev的包,作为一个桌面级别的开发库来构建。
go-lib作为一个标准库,直接按照godoc的规范来实施即可。
The text was updated successfully, but these errors were encountered: