飞天发布时刻:2024年 Forrester 公有云平台Wave™评估报告解读 了解详情
写点什么

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

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

关注

评论

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

镜舟科技荣获 IT168 2024年度创新产品奖!

镜舟科技

开源 分析型数据库 StarRocks IT168 物化视图

还没分享过小米的面经呢,今天它来了

王中阳Go

Go 面试

深度探究 Apache Calcite SQL 校验器实现原理

端小强

Calcite

深入理解 Apache Calcite ValcanoPlanner 优化器

端小强

Calcite

华为云Flexus X实例下的场景体验——小企业的福星——最简单的php环境搭建

轶天下事

区块链ETF软件的开发

北京木奇移动技术有限公司

区块链技术 软件外包公司 ETF

区块链RWA软件项目的开发

北京木奇移动技术有限公司

区块链技术 软件外包公司 RWA开发

华为云征文 云计算新纪元:Flexus云服务器X实例引领柔性算力时代,部署Zabbix运维监控

轶天下事

华为云Flexus X实例docker部署jdk21最新版jenkins搭建自己的devops服务器

轶天下事

基于华为云Flexus云服务器X搭建jumpserver堡垒机软件

轶天下事

在Flexus X上部署ELK日志系统

轶天下事

从AI远见到中国速度:Scaling Law发现者为何引全球热议?

脑极体

AI

Shopify接口对接的详细流程

北京木奇移动技术有限公司

跨境电商 软件外包公司 shopify开发

Flexus X强大性能与高可靠性使用体验——手把手带你部署es docker rabbitmq

轶天下事

《计算机组成及汇编语言原理》阅读笔记:p160-p176

codists

计算机组成及汇编语言原理

继 MagicEden、Pudgy Penguins 后,NFT 公链 Mint Blockchain 向 NFT 社区进行大规模空投

NFT Research

NFT 空投

AI口语App的开发流程

北京木奇移动技术有限公司

AI智能体 AI口语练习 APP外包公司

华为云Flexus云服务器docker部署srs6,协议可使用HLS协议

轶天下事

区块链项目外包开发流程

北京木奇移动技术有限公司

区块链技术 智能合约开发 软件外包公司

2025-01-01:优质数对的总数Ⅰ。用go语言,给定两个整数数组 nums1 和 nums2,分别长度为 n 和 m,以及一个正整数 k。 如果 nums1 数组中的元素 nums1[i] 能被

福大大架构师每日一题

福大大架构师每日一题

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