文章插图
文章插图
背景日常我们会看看一些开源项目,或者想看看自己写的代码可视化,这些都可以通过golang中的工具来实现 。go-callvis以图片的形式展示了go程序的调用关系,在看复杂项目的时候特别有用 。
go-callvies简介2.1工具介绍Go-callvis是一个开发工具,用来帮助可视化带有交互视图的Go程序的调用图 。
此工具的目的是使用调用图中的数据及其与包和类型的关系,为开发人员提供Go程序的可视化概述 。这在大型项目中尤其有用,因为他们的代码复杂度要高得多,或者他们只是试图理解别人的代码 。
2.2特征支持go mod程序中的特定焦点包点击软件包,使用交互式查看器快速切换焦点按类型按包和/或方法分组函数过滤器包到特定的导入路径前缀忽略标准库中的函数省略各种类型的函数调用
三 。装置go get安装$ go get -u github.com/ofabry/go-callvis 复制代码源码编译安装$ git clone https://github.com/ofabry/go-callvis.git cd go-callvis && make install复制代码
四个输出示例
文章插图
文章插图
它运行指针分析来构造程序的调用图,使用数据生成点格式的输出,可以用Graphviz工具渲染 。
动词 (verb的缩写)装置go get -u github.com/ofabry/go-callvis# orgit clone https://github.com/ofabry/go-callvis.gitcd go-callvis && make install复制代码
不及物动词使用go-call vis[可选参数]:
1)使用浏览器的交互式演示
默认情况下,HTTP服务器监听http://localhost:7878/,请使用选项`-HTTP = & # 34;ADDR:港口& # 34;`更改HTTP服务器地址 。
2)静态输出
【刷点击率软件 增加点击率的软件】要生成单个输出文件,请使用选项-file = <文件路径& gt选择输出文件目的地 。
输出格式默认为svg,使用option-format = < SVG | png | jpg |…& gt;选择另一种输出格式 。
3)其他参数
-debug 输出详细日志 -file string 以文件新式输出结果,并将忽略server交互模式 -focus string Focus specific package using name or import path. (default "main") -format string 输出文件的格式 [svg | png | jpg | …] (默认 "svg") -graphviz 使用Graphviz渲染图像 -group string 分组功能,根据包 与/或 类型分组 [pkg, type] (用逗号分开) (默认 "pkg"),例如 -group pkg,type -http string HTTP 服务地址 (默认 ":7878") -ignore string 忽略包含给定前缀的包路径(用逗号分开) -include string 包含具有给定前缀的包路径 (用逗号分开) -limit string Limit package paths to given prefixes (separated by comma) -minlen uint Minimum edge length (for wider output). (default 2) -nodesep float Minimum space between two adjacent nodes in the same rank (for taller output). (default 0.35) -nointer 忽略对未导出函数的调用 。-nostd 忽略标准库的调用 -skipbrowser 跳过打开浏览器 -tags build tags a list of build tags to consider satisfied during the build. For more information about build tags, see the description of build constraints in the documentation for the go/build package -tests 包含测试代码 -version 显示版本号 1)解析main包go-callvis -skipbrowser -nostd ./2)解析testPkg包go-callvis -group pkg,type -focus testPkg github.com/项目具体路径 复制代码
简单的例子$ go-callvis -format png -group pkg,type -focus github.com/kaliarch/cobra/cmd/app github.com/kaliarch/cobra2021/08/18 11:22:12 http serving at http://localhost:78782021/08/18 11:22:21 converting dot to png..2021/08/18 11:22:22 serving file: /var/folders/wn/367g1v9n1bv0sg1k8qldzym80000gn/T/go-callvis_export.png复制代码
- 小说软件排行榜 小说软件排行榜
- 安防软件 守护者安防软件
- 店群采集软件
- 事故车拍卖 事故车拍卖网app软件下载
- 开店软件 开网店的软件
- 排名优化软件 排名优化软件
- 销售话术排名 软件编程如何找客户
- 工厂仓库管理软件 工厂仓库管理软件是什么
- 分时租车 分时租车软件
- 代刷信誉 代刷信誉积分