问题标签 [code-analysis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 我想在 C# 代码中找到所有不带括号的 if 语句。通过正则表达式
我想找到所有不带大括号' '的if
语句和语句。当您在语句中写一行时,您通常不会将其括在大括号中,所以我想找到所有这些和语句。for
{
if
if
for
请帮忙!
就像我想捕捉这个陈述
但不是这些
我想用正则表达式来做。
oop - 可视化函数层次结构树的工具?
任何可以执行其中任何一项的代码分析或“逆向工程”工具?:
- 计算哪些类是哪些类的子类
- 计算哪些类实例化哪些类—— (如VS Class Designer)
- 计算哪些函数调用哪些函数—— (很像调用堆栈)
refactoring - 将 C Callergraphs 与 Doxygen 合并或确定所有调用的联合
我有一组遗留的 C 代码,我正在重构这些代码以将 C 计算代码从 GUI 中分离出来。这由于高度递归的数学核心代码是 K&R 风格的声明而变得复杂。由于函数参数的嵌套使用,我已经放弃了将这些转换为 ANSI 声明的尝试(只是无法消除最后 4 个编译器错误)。
我需要将一些文件移动到纯 DLL 中并确定要公开的最小接口,这将需要编写包装函数来发布类型化接口。
我已经使用 Doxygen @callergraph 标记标记了关键源文件,以便为各个函数生成信息图。除此之外,我想做的是合并这些图表,这样我就可以确定暴露给外界的函数的最窄边界。
原始头文件没有用——它们将所有内容都暴露为无类型的 C 函数。
有数百个函数,所以对生成的调用者图的简单检查是痛苦的。
我正在考虑编写某种 DOT 合并工具 - 设置 DOT_CLEANUP=NO 使 Doxygen 将中间 DOT 文件留在那里,而不是只保留它们生成的 png 文件。
我并不沉迷于这是一个图形解决方案——如果有人可以建议一种替代分析工具(免费或相对便宜)或使用 Doxygen 的 XML 输出来实现相同目标的技术,我会非常高兴。
在文件级别合并的调用者图表确实对客户文档而不是普通列表具有一定的吸引力:-)
code-analysis - 有没有人为 FxCop/StyleCop 制定了任何很酷的规则?
我只是在寻找一些灵感。尤其是在性能和安全性方面,命名约定很重要,但并不“酷”;)
即使您的规则仅适用于您的域/项目,但展示了规则的强大功能,请告诉我。
我使用 C#,但我对任何语言的规则都感兴趣。
visual-studio-2008 - 如何在 Visual Studio 2008 中的整个解决方案上运行 FxCop
必须有简单的方法,我不想在每个项目上单独运行代码分析。
debugging - 什么是统计调试?
什么是统计调试?我还没有找到一个清晰、简洁的解释,但这个词听起来确实令人印象深刻。
它只是一个研究课题,还是在某个地方用于实际开发?换句话说:它会帮助我找到程序中的错误吗?
svn - 图形代码分析
我将 SubVersion 与 Hudson 结合使用,我喜欢显示单元测试、构建时间、磁盘使用量如何随时间增长的功能。我相信代码指标可以对代码库进行初步评估 - 在从新客户开始时特别有用。是否有任何工具可以执行以下操作
1)从日期/标签开始获取源代码的每个修订版
2)构建它
3) 运行代码分析
4) 运行测试
5)存储详细结果(在某种Sql数据库中)
6) 重复直到不再修改
7) 整理并呈现结果
您可以看到 hudson 本身的摘要输出,但这并不能说明单个文件,以及它们如何随时间变化。
c++ - C++代码分析工具
我目前正在学习 C++,因为我还在学习,所以我一直在犯错误。
对于像 C++ 这样宽松的语言,通常需要很长时间才能准确找出问题所在——因为编译器让我摆脱了很多。我意识到这种灵活性是 C++ 的主要优势之一,但它使学习基本语言变得困难。
是否有一些工具可以用来分析我的代码并根据最佳实践或只是明智的编码提出建议?最好作为 Eclipse 插件或 linux 应用程序。
c# - FxCop - 在适当的地方使用属性
我在服务层有几个方法接口,从 Get 和 FxCop 的Use 属性开始,适当的规则抱怨我应该考虑使用属性。
我尝试使用 SuppressMessageAttribute 但是当它在接口上定义时,它对成员方法没有影响。我是否需要将 SuppressMessageAttribute 放到每个方法中,还是有办法抑制整个类型的CA1024?