写点什么

使用 Caliper 度量 Ruby 代码的规范程度

  • 2009-11-10
  • 本文字数:708 字

    阅读完需:约 2 分钟

Caliper 为 Ruby 项目提供了制式标准评价,其使用可以说是再简单不过了:仅仅是将Caliper 指向你的Git 库,等几分钟吧,然后看看你的代码合不合符制式标准。

Caliper 是免费的服务,由 Devver 提供,这个公司以其测试加速程序(参考 InfoQ 上的 Faster Ruby Test Execution With Devver )而闻名。各类的标准的计算是由 metric_fu 完成的,它一次使用类似于 Roodi (对设计问题发出警告)和 Saikuro (一个循环复杂度分析器)。Caliper 将这些数据聚集起来,分析之后提供一个很完整漂亮的概述。例如,看看 Sinatra 的分析报告。

Devver 的 Benjamin Brinckerhoff 告诉我们,他们准备加入更多的标准测试:

我们还不完全肯定我们将会加入哪些测试。这主要看我们从用户得到的反馈。现在有一些想法:

  • Towelie ,和 Flay 很类似,用来度量代码冗余。
  • rcov ,已经包含在 metric_fu,但是 Caliper 现在还不支持。
  • Railroad ,类范图生成器。
  • TODO 探测器,查看哪些文件的 TODO 最多(或者其他的程序员做的标记)。具体的字符串可以自定义,我们希望能够自己编写这个程序(这个应该是相当容易)。

当我们添加这些工具的时候,我们也计划将其加入 metric_fu 中(如果 metric_fu 团队允许这么做的话,那就太好了!)。同时,我们也正在努力地是现有的 metric_fu 数据更加易于理解和使用。

仅仅计算是否符合标准是不够的,代码还应该能够在以后被重构。 Devver 的博客上展示了 Caliper 的标准是如何用来改善其代码库。Caliper 也能够和其他的服务通过提交确认回调(Post-commit Hooks)的方式集成在一起,例如 GitHub rdoc.info

这个服务对于开源项目来说是免费的,如果在私人项目中使用则需要支付相应的费用。

查看英文原文: Metrics for Ruby With Caliper

2009-11-10 18:551067
用户头像

发布了 90 篇内容, 共 34.7 次阅读, 收获喜欢 5 次。

关注

评论

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

如何使用 Java 将 JSON 文件读取为字符串?这三种方法很管用!

Java架构历程

三周年连更

Koordinator 一周年,新版本 v1.2.0 支持节点资源预留,兼容社区重调度策略

阿里巴巴云原生

阿里云 开源 云原生 Koordinator

Unity 之 关于停止协程的五种方式解析

陈言必行

Unity 三周年连更

缓存的处理步骤

阿泽🧸

缓存 三周年连更

2022-04-23:给定你一个整数数组 nums 我们要将 nums 数组中的每个元素移动到 A 集合 或者 B 集合中 使得 A 集合和 B 集合不为空,并且 average(A) == aver

福大大架构师每日一题

golang 算法 rust

python时间序列预测之Holt-Winters

AIWeker

Python 机器学习 时间序列 三周年连更

职业规划:如何面对“程序员失业”?| 社区征文

ninetyhe

人工智能 AI 大龄程序员 三周年征文

INFINI 产品更新|Console v1.0 版本正式发布

极限实验室

elasticsearch console Gateway infini 极限网关

R 编程并发的基础知识有哪些?

海拥(haiyong.site)

三周年连更

Kubernetes架构解析

乌龟哥哥

三周年连更

【深入浅出Spring原理及实战】「源码调试分析」深入源码探索Spring底层框架的的refresh方法所出现的问题和异常

洛神灬殇

spring NPE 源码剖析 4月日更 问题分析

Kubernetes网络模型分析

王玉川

Kubernetes 云原生 网络 iptables cluster

极客时间「大师课·深度剖析 RocketMQ5.0」上线啦,欢迎免费领取!

阿里巴巴云原生

阿里云 RocketMQ 云原生

Shell脚本实战:Consul 服务注册和注销的最佳实践

小毛驴的烂笔头

Linux Shell

音视频八股文(4)--ffmpeg常见命令(3)

福大大架构师每日一题

音视频 ffmpeg

Shell脚本从入门到精通

袁袁袁袁满

三周年连更

发现了一个对公有云资源进行规范管理的方法

cynthia

公有云 云管平台 安全合规

TestNG 中使用 Guice 来进行依赖注入

HoneyMoose

数字未来:世界正走向新的“破茧时刻”

脑极体

华为

如何在 Linux 中查找文件所有者?

wljslmz

三周年连更

上线控制台,降低使用门槛|Higress 1.0.0 RC 版本发布

阿里巴巴云原生

阿里云 云原生 Higress

关于容器云的三种网络设计

穿过生命散发芬芳

容器云 三周年连更

学会 Go select 语句,轻松实现高效并发

陈明勇

Go golang 高并发 select 三周年连更

CnosDB成为首个支持sqllogictest的时序数据库,稳定性与可靠性再升级

CnosDB

数据库 开源 时序数据库 CnosDB

百度平地起“雷”,突然爆出的QPS数据意味着什么?

脑极体

大模型

Matlab实现光伏发电电池模型

Shine

三周年连更

Android调用WebService

芯动大师

HTTP WebService 三周年连更

精进云原生 - Dubbo 3.2 正式发布

阿里巴巴云原生

阿里云 云原生 dubbo

世界读书日|华为阅读联合40余家伙伴推出精品书单

最新动态

《精进3:找到你的潜在生态位》

石云升

读书笔记 三周年连更

测试需求平台8-Arco组件实现产品增改需求

MegaQi

测试平台开发 三周年连更 AcroVue

使用Caliper度量Ruby代码的规范程度_Ruby_Mirko Stocker_InfoQ精选文章