Rails代码品质辅助工具

在日常的研发工作中,写代码除了实现功能需求外,更应该考量的是代码的品质——执行的性能、安全性以及后期的可拓展维护性。

Brakeman - Rails代码安全扫描检查工具

A static analysis security vulnerability scanner for Ruby on Rails applications
http://brakemanscanner.org/

静态分析Rails源代码,帮助程序员在开发过程发现各种安全问题,最后生成一份检查报告,可以在部署之前尽早发现潜在的安全问题。常见的Sql注入、CSRF注入漏洞都能有效检测出来。

Github: https://github.com/presidentbeef/brakeman

安装:

1
2
3
group :development do
gem 'brakeman', :require => false
end

使用,直接在项目根目录运行:

1
brakeman

Rails Best Practices - Rails最佳实践

同一个功能的实现,在Rails中可能有很多种方式,但是在Rails社区有一套大家推崇的最佳实现方式,这就是所谓的Rails Base Practices。有人就制作了一个能够自动检查违背最佳实践代码的Gem,名为rails_best_practices

安装:

1
2
3
group :development do
gem "rails_best_practices"
end

使用,直接在项目根目录运行:

1
rails_best_practices .

RuboCop - 基于Ruby Style Guide的静态代码分析检查工具

基于Ruby社区维护的Ruby代码规范指南对代码进行分析和检查,并提出改进建议。中文版

里面的规范有包括文件的编码、缩进、换行、Class定义写法等各种标准的规范,大家都统一使用一致的方式也大大提升了代码的可读性和简化了后期的维护。RuboCop在Github上的地址是:https://github.com/bbatsov/rubocop

安装:

1
2
3
group :development do
gem 'rubocop', require: false
end

使用,直接在项目根目录运行:

1
rubocop

如果要只针对指定目录和文件进行检查:

1
rubocop app spec lib/something.rb

Sublime还有一个专门基于RuboCop检查的插件:https://github.com/pderichs/sublime_rubocop

有强迫症的码工们可以都尝试一下!