写点什么

Ruby 静态分析工具检视:metric_fu, Simian, Saikuro 以及其他

  • 2009-09-16
  • 本文字数:686 字

    阅读完需:约 2 分钟

代码质量构成了软件质量的一部分。像 Java 和 C++ 之类主流语言的工具已经比较成熟了,而 Ruby 相关工具还在成长。随着 Ruby 从早期采纳者向早期大众普及,人们对这些工具的需求越来越多,而且 SLOC(源代码行数)在不断增长。人们使用自动化工具检测多种问题,比如风格不一致、方法过程和代码重复。

Steve Hayes 在芝加哥举办的 Agile2009 大会上做了一个名为“Java 和 Ruby 的代码质量”的演讲。InfoQ 也借此机会审视了 Ruby 世界中可为人所用的工具。

  • ** Roodi (Ruby 面向对象设计 Inferometer)——** 该工具会解析你的 Ruby 代码,并根据你配置好的列表,对设计方面的问题提出警告,比如:类代码行数检查、for 循环检查、参数个数检查、圈复杂度检查,还有其他 10 个检查选项。
  • Reek ——类似 Roodi。
  • Saikuro ——设计目的是要检查圈复杂度
  • Flog ——由 Ryan Davis 开发,它会给你的代码计算一个得分:得分越高,你的代码越差。计算得分时考虑了 ABC 度量指标(赋值、分支和调用)。
  • Simian ——类似的分析器,可以用来识别代码重复(要想商用,就得付出 99 美元)。
  • Flay ——这是 Ryan Davis 开发的另一个免费工具,能够找到代码中在结构上的相似性。

要想使用所有这些工具,你很快就会觉得痛苦,这时 metric_fu 就成了救星。它包括了上述所有工具(Simian 除外),而且能够方便地生成关于你的应用的报告。很容易就能把它和 Rails 集成在一起,而且花些时间就能生成图表。


_ 来自 Jakes Scruggs _ 的图表。

您可以根据 Assaf Arkin 的指导来为Rails 项目设置Hudson,同时带有metric_fu 支持

查看英文原文: Ruby Static Analysis Tools Roundup: metric_fu, Simian, Saikuro and More

2009-09-16 09:372364
用户头像

发布了 479 篇内容, 共 178.1 次阅读, 收获喜欢 53 次。

关注

评论

发布
暂无评论
发现更多内容

解析YashanDB数据库与区块链技术的结合

数据库砖家

跨平台兼容性:YashanDB数据库的实现原理解析

数据库砖家

利用YashanDB数据库实现跨部门数据协同的核心方法

数据库砖家

字节发布最新豆包视觉推理模型,一手实测来啦!

苍何

Voice Agent Camp 结营!完整项目名单公布丨超音速计划 2025

声网

快速上手YashanDB:从安装到优化的全流程教程

数据库砖家

面向未来的YashanDB数据库核心技术演进路线

数据库砖家

企业必读:YashanDB数据库故障排查与恢复操作指南

数据库砖家

自控学习历程系列 自控维护经验总结(26)

万里无云万里天

工厂运维

三个月,50W字,一张项目管理知识体系大图

Ian哥

项目管理 企业管理 PMO 研发项目管理

文件上传攻击全面指南:从侦察到防御

qife122

网络安全 渗透测试

YashanDB 是一款高性能、灵活且可扩展的数据库系统

数据库砖家

利用YashanDB数据库分析提升企业决策能力

数据库砖家

抓票啦 - 您的智能抢票小助手!

Chris Zhang

微信小程序 抢火车票 抢票

利用YashanDB数据库提升企业数据检索效率的方法

数据库砖家

面向企业的YashanDB数据库架构优化技巧

数据库砖家

Stack Overflow推出AI编程助手与代码挑战,助力编程学习

qife122

编程学习 AI工具

理解YashanDB数据库的核心优势与应用场景

数据库砖家

面向大规模用户的YashanDB数据库性能承载研究

数据库砖家

企业安全合规下YashanDB的数据治理框架

数据库砖家

工业设计 自控设计经验总结(6)

万里无云万里天

工业 工厂运维 工业设计

大数据-112 Flink DataStream API :数据源、转换与输出 文件、Socket 到 Kafka 的完整流程

武子康

Java 大数据 flink spark 分布式

解锁YashanDB数据库的强大API接口功能

数据库砖家

了解YashanDB数据库中的数据存储机制

数据库砖家

利用YashanDB数据库构建动态数据权限管理体系的策略

数据库砖家

企业版本YashanDB数据库升级维护全流程指南

数据库砖家

利用YashanDB构建高效能实时数据处理系统

数据库砖家

利用YashanDB数据库实现自动化数据清洗的实用攻略

数据库砖家

Photoshop 2024 for Mac:AI赋能,3D建模+视频剪辑一软搞定!

春天的风暖暖的

面向实时计算的YashanDB数据流处理技术探析

数据库砖家

企业大规模应用YashanDB数据库

数据库砖家

Ruby静态分析工具检视:metric_fu, Simian, Saikuro以及其他_研发效能_Sebastien Auvray_InfoQ精选文章