开发过程中随着工程的迭代,代码会越来越繁杂。一个可行的解决方式就是把通用代码提炼到工具类中,供多个地方重复使用。这样产生的一个需求就是对工具类进行文档注释。今天发现了一个第三方实现的十分方便的注释利器——AppleDoc。
利用AppleDoc不但可以快速生成文档,还能将文档自动添加到Xcode中。按照AppleDoc的语法对方法书写注释,按住opt键,鼠标放该方法上面时,能够产生和Xcode原生文档一样的效果。
AppleDoc.png
具体使用方式,可以参考下面这篇博客:使用AppleDoc自动生成项目文档。文章虽然以Xcode8为例,但是我在Xcode9中测试,依然能够正常使用。
***********2018.01.23更新***********
在使用过程中,出现错误
AppledocException: Failed merging @propertyDDTTYLogger.sharedInstance to +[DDTTYLogger sharedInstance]; method type doesn't match!
@ 0 CoreFoundation 0x00007fff3206100b __exceptionPreprocess + 171
@ 1 libobjc.A.dylib 0x00007fff58ceec76 objc_exception_throw + 48
@ 2 CoreFoundation 0x00007fff32066da2 +[NSException raise:format:arguments:] + 98
//省略若干行
这是因为类中注释存在 appledoc 不能识别的语法。使用命令
appledoc --project-name xxx --project-company xxx --company-id xxx ./
会对本工程中的所有类文件进行 appledoc 语法检查,生成相对应的文档,包括我们引入的 Cocoapods 中的所有文件。所以我们应该加入参数,忽略 Pods 文件夹, 输入命令
appledoc --help
能看到对 appledoc 命令参数的详细解释:
PATHS
-o, --output <path> Output path
-t, --templates <path> Template files path
--docset-install-path <path> DocSet installation path
-s, --include <path> Include static doc(s) at path
-i, --ignore <path> Ignore given path
-x, --exclude-output <path> Exclude given path from output
--index-desc <path> File including main index description
通过加入 -i 参数能够忽略文件夹。使用简化的命令:
appledoc -p xxx -c xxx -i Pods ./
就能忽略掉Pods文件夹中的所有文件。
关注和喜欢都是对我的鼓励和支持~