【无标题】

使用VisualStudio高效阅读代码

  • 前言
    • 相关准备
    • 导入工程
    • 利用VisualStudio生成类图,结构体调用关系
    • 利用EnterpriseArchitect(EA)画时序图

前言

目前市面上代码阅读的IDE工具非常丰富,也各有千秋。由于工作经历原因,研发机经历过windows、Mac、Linux平台,以及客户端服务端研发。个人而言,觉得IDE还是VisualStudio全面,工具丰富,下面主要介绍日常使用visual studio高效阅读代码的一些总结。

相关准备

  • 安装:从官网下载vsstudio。
  • 下载:vc助手
  • 下载待分析的工程,本次以ffmpeg为例

导入工程

  • 创建新项目,选择“Windows桌面应用程序”,写个项目名称,创建。

PS:推荐“windows桌面应用程序”,后续可在解决方案界面导入文件夹代码。(之前试过CMake项目不行)
【无标题】_第1张图片【无标题】_第2张图片

  • 将下载的代码整体目录拷贝到工程中。
  • 切换到visualstudio的“解决方案管理器”页面,点击“显示所有文件”,可见“ffmpeg工程文件夹”已经显示在解决方案中。
    【无标题】_第3张图片
  • 在“ffmpeg”文件夹上右键“包括在项目中”
    【无标题】_第4张图片
  • 使用VC助手检测是否导入成功。“shift+alt+o”打开可见所有文件均导入到项目中。
    【无标题】_第5张图片

利用VisualStudio生成类图,结构体调用关系

  • 方式一:切换到类视图(1),在工程名上右键(2),查看(3),查看类图
    ps:如果工程庞大且复杂,一般会生成失败,主要存在部分无法递归生成。此时可以用方式二。
    【无标题】_第6张图片
  • 方式二
  • 类图上输入想查看的主类(主结构体),右键查看类图,会创建ClassDiagram.cd文件。
    【无标题】_第7张图片
  • 在ClassDiagram类图文件上,展开“InputFile”,选中所有字段,右键“显示为关联”,可以根据InputFile的变量生成相关联的类(结构体)。同时如果是C++类,可以选择展开基类调用关系。
    【无标题】_第8张图片
  • 这是ffmpeg bin中主要结构体调用关系
    【无标题】_第9张图片

利用EnterpriseArchitect(EA)画时序图

  • EA画图能力强大,可参考

你可能感兴趣的:(08-设计,03-工具/脚本,VisualStudio,1024程序员节)