您使用什么工具进行静态代码分析? [关闭]

2024-05-04

这个问题 https://stackoverflow.com/questions/20702/whats-youra-good-limit-for-cyclomatic-complexity on 圈复杂度 http://en.wikipedia.org/wiki/Cyclomatic_complexity让我更多地思考静态代码分析 http://en.wikipedia.org/wiki/Static_code_analysis。分析代码复杂性和一致性有时很有用,我想开始更多地这样做。您推荐哪些工具(每种语言)用于此类分析?维基百科 http://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis有很多工具,但是人们之前尝试过哪些工具?

Edit:正如大卫指出的那样,这并不是一个完全没有被问到的问题基于 C/UNIX 的工具 https://stackoverflow.com/questions/2873/choosing-a-static-code-analysis-tool.


我一直在为我的 Objective-C iPhone 项目(iOS 应用程序)设置 Hudson 持续集成 (CI) 构建系统,并编译了一系列可用于在构建过程中分析我的项目的工具:

  • Clang 静态分析器:免费、最新的独立工具,比 Xcode 4 附带的 Clang 版本捕获更多问题。活动项目。 - 访问http://clang-analyzer.llvm.org http://clang-analyzer.llvm.org

  • Doxygen:免费文档生成工具,还可以生成类依赖关系图。活跃项目——参观http://www.doxygen.nl http://www.doxygen.nl

  • HFCCA(无头循环复杂度分析器):用于计算代码复杂度的免费 Python 脚本,但没有头文件和预处理器。支持 Hudson/Jenkins 构建的 XML 格式输出。活跃的项目。 - 访问http://code.google.com/p/headerfile-free-cyclomatic-complexity-analyzer http://code.google.com/p/headerfile-free-cyclomatic-complexity-analyzer

  • CLOC(计算代码行数):免费工具,用于计算文件、代码行数、注释和空行数。支持比较,因此您可以看到构建之间的差异。活跃的项目。 - 访问http://cloc.sourceforge.net http://cloc.sourceforge.net

  • SLOC计数(源代码行数计数):一个免费工具,用于计算代码行数并估计与项目相关的成本和时间。看起来并不活跃。 - 访问http://sourceforge.net/projects/sloccount http://sourceforge.net/projects/sloccount and http://www.dwheeler.com/sloccount http://www.dwheeler.com/sloccount

  • 分析工具:免费的代码分析工具,可以测量代码复杂性并生成依赖关系图。不活跃。似乎不适用于 Xcode 4,但我很想让它工作。 - 访问http://www.karppinen.fi/analysistool http://www.karppinen.fi/analysistool

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

您使用什么工具进行静态代码分析? [关闭] 的相关文章

  • 列出 C/C++ 函数(Unix 中的代码分析)

    无论我们是维护不熟悉的代码还是检查 Apache 模块的实现细节 如果我们能够快速遍历代码并建立对我们正在查看的内容的概述 都会有所帮助 Grep 可以满足我的大部分日常需求 但在某些情况下它却无法满足 这是一个常见的示例 说明它如何提供帮
  • Sonar 4.2 分析同一项目中的 Java 和 JavaScript

    我正在尝试分析我的JEE项目与声纳4 2 它是多语言 JEE项目与Java and JS 我添加到我的插件声纳4 2 are Java 2 1 and JavaScript 1 6 最近 声纳添加了多语言分析 遵循doc 我已经删除了声纳语
  • 为什么 Codan 找不到 size_t

    我刚刚开始使用 Eclipse Indigo 来自 Galileo 每次使用 size t 时 我都会在排水沟中发现红色的小虫子 代码编译没有问题 但我怀疑我必须显式添加包含目录的路径 我已经在那里找到了通常的嫌疑人 我正在使用 Gnu 工
  • CS8019 临时文件 MSBuild 服务器上的 Assemblyinfo 错误

    我的构建服务器上出现代码分析错误 错误是 NETFramework 版本 v4 6 AssemblyAttributes cs 3 1 错误CS8019 不必要的using指令 它位于 Visual Studio 创建的临时文件中 在我的项
  • 嵌入式软件 Misra 标准

    我需要使大量代码符合 MISRA 要求 第一个问题 有人可以给一个估计用于根据经验传递编写良好的嵌入式系统代码 我知道 写得好 的定义不明确且模糊 所以我要求进行原始估计 第二个问题 对可定制 即允许抑制特定警告 并在自动构建环境 即命令行
  • FxCop Phoenix 分析引擎出错

    因此 我尝试运行规则集中定义的一堆规则 RuleSet 文件实际上是使用 Sonarqube 生成的 我已经选择了其中的所有规则 包括 FxCop ReSharper 和 StyleCop 规则 我这样启动 FxCop C FxCop Fx
  • 在 Visual Studio (2013) 中定义“CustomDictionary.xml”架构的正确方法?

    我正在使用自定义词典 CustomDictionary xml https learn microsoft com en us visualstudio code quality how to customize the code anal
  • 代码分析返回并建议不使用“out”参数

    我针对我创建的对象运行 VS 2008 代码分析工具并收到以下建议 警告 147 CA1021 Microsoft Design 考虑一种不 要求 returnValue 为 out 范围 我发现 out 参数相当有用 但没有意识到它们被认
  • F# 中的代码分析

    作为一名 C 开发人员 我从 Microsoft 的代码分析中受益匪浅 然而 在 F 中 代码分析似乎并不是开发周期的一个组成部分 我花了一段时间才在 F 项目上启用 CA 但这博客有帮助 http blog nikosbaxevanis
  • 有没有办法让代码分析忽略“InternalsVisibleTo”?

    我们有很多包含内部类的程序集 我们使用这些内部类进行单元测试InternalsVisibleTo使内部类对单元测试程序集可见 这工作正常 但问题是一旦你使用InternalsVisibleTo 它可以防止代码分析 CA1812 警告 避免未
  • 如何禁用 MSBuild 目标 ClCompile 中的代码分析?

    当我通过 MSBuilds 脚本构建项目时 我在工作期间收到以下消息ClCompile目标 Running Code Analysis for C C MSBuild 的输出如下所示 ClCompile Source1 cpp Source
  • Matlab:如何在使用给定函数的路径上查找函数

    有时我需要改变函数的行为 有没有一种简单的方法可以找到使用该函数的函数 在 matlab 路径上 我这样做的方法是查找包含我感兴趣的函数名称的文件 因此 我不仅可以看到谁调用了我的函数 还可以看到他们使用的签名 在编辑器中 编辑 gt 查找
  • 如何更改 AOSP 中的应用程序无响应 (ANR) 超时 [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 如何更改 AOSP 源代码中的应用程序无响应 ANR 超时 默认超时为 5 秒 但该设置在哪里以及如何更改它 ANR 超时在文件 Input
  • 如何比较相似的代码库?

    我们有几个基于相同代码库构建的 C 项目 它们之间有很多相似之处和共同的代码 但它们是独立开发的 来源未以任何方式共享 即使底层代码没有改变 并且个别行将被调整 更改和替换 类和文件也将被重命名 我希望能够比较不同的代码库并找出有多少代码仍
  • 识别 R 函数和脚本的依赖关系

    我正在筛选一个包和使用该包的脚本 并希望识别外部依赖项 目标是修改脚本以指定library pkgName 并修改包中的函数以使用require pkgName 这样以后这些依赖关系就会更加明显 我正在修改代码以考虑每个外部依赖包 举个例子
  • 源码分析工具? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 C 和 C 的源代码分析和探索工具似乎非常缺乏 是否有任何工具可以用来收集有关 C 和 或 C 源文件的信息 cscope 完成了我需要的
  • C#代码分析CA2000

    我有一个函数 我以为我已经修复了代码分析中的 CA2000 警告 但它不会消失 该警告位于 SqlCommand 上 这是函数 protected internal void LogUserSession int managerID usi
  • C++/CLI:CA2123:需要 SecurityCriticalAttribute?

    我对这样的错误有点迷失 警告 7 CA2123 Microsoft Security 添加以下安全属性 到 RithmicConnector 连接 字符串 为了匹配基地的 LinkDemand 方法 IConnector Connect S
  • C 静态代码分析器

    您使用哪种静态代码分析器 如果有 我一直在 Python 中使用 PyLint 我对它非常满意 现在我需要类似的 C 代码 为了正常的日常使用 您需要抑制多少输出 维基百科维护着一个静态代码分析工具列表 http en wikipedia
  • 禁用/修复 .Designer.cs 文件中的代码分析警告

    我在用DataVisualization Charting Chart广泛地 并且在很大程度上它正在发挥作用 但是 我经常运行代码分析 并处理了我自己的所有警告 但是 使用图表的 Designer cs 文件中有大约 30 个 CA2000

随机推荐

  • Python虚拟环境包安装问题

    我正在构建一个需要 Django 的 Python 项目 我使用 virtualenv 创建了项目目录和虚拟环境 但我无法使用 PIP 安装 django 我必须使用 easy install 才能将其安装到虚拟环境中 注意 我只在 Dja
  • AWS Cloudfront 行为函数不重定向

    尝试找到一种方法将流量从我的 AWS CloudFront 页面重定向到另一个 URL 我目前正在使用 Cloudfront Functions 设置 函数 函数代码 函数名称 exampleFunction function handle
  • MD5 是否保证可与 Android 中的 MessageDigest 一起使用?

    我想知道 MD5 摘要算法是否保证在所有 Android 设备中可用 然后再直率地忽略已检查的异常MessageDigest getInstance MD5 可以扔 我越来越java security NoSuchAlgorithmExce
  • Ubuntu 上的 Docker 无法连接到本地主机,但可以连接到其 IP

    我运行的是 Ubuntu 18 04 uname r 5 3 0 46 generic 我已经安装了docker docker version Docker version 19 03 8 build afacb8b7f0 我有一个简单的
  • 从数据层中删除所有特征

    我用过类似的东西 var map function initialize map new google maps Map document getElementById map canvas zoom 4 center lat 28 lng
  • 如何使用 VBA 在 PowerPoint 中取消形状组合后按类型重新组合形状

    继我的出色回答之后上一个问题 https stackoverflow com questions 74339247 how to rename shapes within grouped groups in powerpoint with
  • 如何在两个不同的视图控制器之间传递信息?

    这是一个简单的问题 我有 2 个不同的视图控制器 每个视图控制器都有自己的数据存储在其 m 文件中 我想取一个值 例如 一个整数值 int i 3 在 ViewController 1 中声明并将其传递给 ViewController 2
  • 如何使用 BeautifulSoup4 获取
    标记之前的所有文本

    我正在尝试为我的应用程序抓取一些数据 我的问题是我需要一些 HTML 代码如下 tr td This a class tip info href blablablablabla is a first a sentence br This a
  • pandas 从日期时间转换为整数时间戳

    考虑 python 中的 pandas 数据框有一个名为time整数类型 我可以将其转换为datetime按照以下说明进行格式化 df time pandas to datetime df time unit s 所以现在该列有如下条目 2
  • Linq:将扁平结构转换为分层结构

    转换平面结构最简单且有效的方法是什么 object rawData new object A1 B1 C1 A1 B1 C2 A2 B2 C3 A2 B2 C4 more 变成层次结构 class X public X Cs new Lis
  • lambda 函数的代码覆盖率

    我有以下带有 lambda 函数的代码 obj method param gt code here 如何通过测试覆盖 lambda 函数中的代码 您可以使用反射 但这可能容易出错并且适得其反 我建议你调用使用 lambda 的方法
  • 在 Windows 窗体应用程序中捕获 MonthCalendar 控件的双击

    如何捕获 System Windows Forms MonthCalendar 控件的双击事件 我尝试过使用 MouseDown 的 MouseEventArgs Clicks 属性 但它始终为 1 即使我双击也是如此 请注意 MonthC
  • 从后台弹出时片段的 onResume() 不会被调用

    您好 我正在开发 Android 应用程序 我正在使用它 我正在使用单个Activity和3个碎片 所以考虑我有 3 个片段 A B C 当我从 A 切换到 B 时 我添加Fragment现在 当我从 C 单击返回时 它会显示 B 并且 B
  • HTML5 应用程序缓存与浏览器缓存

    当前浏览器中实现了 applicationCache 我的应用程序缓存清单文件更改版本号 然后触发 applicationCache 更新事件 强制浏览器从服务器下载清单文件中提到的新资源 假设我已经在这些资源上配置了远期到期标头 这些文件
  • 通过 facebook api 在 facebook feed 中发布 swf

    我正在使用下面的数组 feeddata array type gt flash method gt stream publish display gt iframe link gt https developers facebook com
  • 最近点对算法

    我目前正在致力于用 C 实现最接近的点对算法 也就是说 给定一个点列表 x y 找到具有最小欧氏距离的点对 我对此进行了研究 我对算法的理解如下 如果我错了 请纠正我 将点数组从中间拆分 递归地找到左半部分和右半部分距离最小的点对 按 y
  • 相机姿态估计(OpenCV PnP)

    我正在尝试使用网络摄像头从具有已知全球位置的四个基准点的图像中获取全局姿态估计 我检查了许多 stackexchange 问题和一些论文 但似乎无法得到正确的解决方案 我得到的位置数字是可重复的 但与相机移动绝不成线性比例 仅供参考 我正在
  • 如何隐藏数据透视项标题?

    我希望有一个具有 PivotItems 但没有横向数据透视项标题文本的数据透视控件 它是横向模式下的画廊 当恢复为纵向时 它应该再次显示 PivotItems 标题 解决办法就是制作文字PivotItem Header 不好 因为标题文本占
  • 使用CSS按比例调整图像大小? [复制]

    这个问题在这里已经有答案了 有没有办法仅使用 CSS 按比例调整 缩小 图像大小 我正在使用 JavaScript 方式 但只是想看看这是否可以用 CSS 实现 要使用 CSS 按比例调整图像大小 img resize width 540p
  • 您使用什么工具进行静态代码分析? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 这个问题 https stackoverflow com questions 20702 whats youra good limit for