AICon 深圳站 Keynote 嘉宾官宣!共探AI价值转化的实践路径 了解详情
写点什么

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:372277
用户头像

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

关注

评论

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

优博讯助力深圳打造全球“鸿蒙欧拉之城”

极客天地

NFT挖矿分红系统开发模式定制

开发微hkkf5566

C# 窗体应用DataGridView,使用数据库(Sql和MySQl)对DataGridView绑定数据源,获取数据

IC00

C# 7月月更

图文并茂,讲解TCP和UDP协议的原理以及区别

程序知音

程序员 网络 TCP/IP 后端技术 底层原理

敏捷 ? DevOps ?

FunTester

CSS 炫酷文本过渡动画

南城FE

CSS css3 前端 7月月更

SeekTiger的Okaleido有大动作,生态通证STI会借此爆发?

鳄鱼视界

java零基础入门-java8新特性(上篇)

喵手

Java 7月月更

LeetCode-88. 合并两个有序数组(java)

bug菌

Leet Code 7月月更

Spring Cloud 与 K8s 的微服务设计

Damon

7月月更

SENSORO 付刘伟:创新技术服务为基层政府筑造数字底座

SENSORO

人工智能 大数据 物联网 城市大脑 数字政府

干货分享-作为Lead 接手一个新的数据团队一 问题盘点 与Insights的发现

松子(李博源)

经验分享 数据分析师 成长笔记 带团队

开幕在即 | “万物互联,使能千行百业”2022开放原子全球开源峰会OpenAtom OpenHarmony分论坛

OpenHarmony开发者

OpenHarmony

算法题每日一练---第5天:星系炸弹

知心宝贝

算法 前端 后端 7月月更

TIME的新封面:元宇宙将改变一切

智捷云

元宇宙 Metaverse 智捷云 智捷云科技

如何做好研发精益需求管理

思码逸研发效能

研发管理 研发效能 科技

妙啊!美团 OCTO 分布式服务治理系统,这描述也太清晰了

冉然学Java

Java 分布式 美团 #技术干货# Java 开发

转转监控系统的内部原理及实践 审核中

转转技术团队

监控 Prometheus

万物皆可柯里化的 Ramda.js

掘金安东尼

前端 函数式编程 7月月更

实时计算基本概念解析

五分钟学大数据

实时计算 7月月更

关于数据产品经理的三个小的知识点

松子(李博源)

数据中台 数据产品经理 数据产品

NFT数字藏品系统搭建—app开发

开源直播系统源码

软件开发 数字藏品 NFT数字藏品系统

面向高性能计算场景的存储系统解决方案

Baidu AICLOUD

异构计算 云原生存储 AI加速

JAVA编程规范之日志规约

源字节1号

后端技术

NFT卡牌链游系统Dapp开发搭建

薇電13242772558

NFT 链游

面试突击67:说一下 TCP/IP 协议?以及每层的作用?

王磊

Java 面试

多商户系统的直播功能用过吗?用过的朋友扣个 666!

CRMEB

一文读懂Elephant Swap的LaaS方案的优势之处

西柚子

在 Kyma 云原生平台上开发并部署 Node.js 应用

汪子熙

Kubernetes 云原生 SAP Kyma 7月月更

阿里JAVA架构师面试136题含答案:JVM+spring+分布式+并发编程!

程序知音

Java 程序员 java面试 后端技术 八股文

转转微服务框架的连接管理

转转技术团队

微服务 RPC 服务治理

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