在日常的研發(fā)工作中,寫代碼除了實(shí)現(xiàn)功能需求外碎连,更應(yīng)該考量的是代碼的品質(zhì)——執(zhí)行的性能、安全性以及后期的可拓展維護(hù)性。
Brakeman - Rails代碼安全掃描檢查工具
A static analysis security vulnerability scanner for Ruby on Rails applications
http://brakemanscanner.org/
靜態(tài)分析Rails源代碼综苔,幫助程序員在開發(fā)過程發(fā)現(xiàn)各種安全問題,最后生成一份檢查報(bào)告,可以在部署之前盡早發(fā)現(xiàn)潛在的安全問題如筛。常見的Sql注入堡牡、CSRF注入漏洞都能有效檢測(cè)出來。
Github: https://github.com/presidentbeef/brakeman
安裝:
group :development do
gem 'brakeman', :require => false
end
使用杨刨,直接在項(xiàng)目根目錄運(yùn)行:
brakeman
Rails Best Practices - Rails最佳實(shí)踐
同一個(gè)功能的實(shí)現(xiàn)晤柄,在Rails中可能有很多種方式,但是在Rails社區(qū)有一套大家推崇的最佳實(shí)現(xiàn)方式妖胀,這就是所謂的Rails Base Practices芥颈。有人就制作了一個(gè)能夠自動(dòng)檢查違背最佳實(shí)踐代碼的Gem,名為rails_best_practices赚抡。
安裝:
group :development do
gem "rails_best_practices"
end
使用爬坑,直接在項(xiàng)目根目錄運(yùn)行:
rails_best_practices .
RuboCop - 基于Ruby Style Guide的靜態(tài)代碼分析檢查工具
基于Ruby社區(qū)維護(hù)的Ruby代碼規(guī)范指南對(duì)代碼進(jìn)行分析和檢查,并提出改進(jìn)建議涂臣。中文版
里面的規(guī)范有包括文件的編碼盾计、縮進(jìn)、換行肉康、Class定義寫法等各種標(biāo)準(zhǔn)的規(guī)范闯估,大家都統(tǒng)一使用一致的方式也大大提升了代碼的可讀性和簡(jiǎn)化了后期的維護(hù)。RuboCop在Github上的地址是:https://github.com/bbatsov/rubocop
安裝:
group :development do
gem 'rubocop', require: false
end
使用吼和,直接在項(xiàng)目根目錄運(yùn)行:
rubocop
如果要只針對(duì)指定目錄和文件進(jìn)行檢查:
rubocop app spec lib/something.rb
Sublime還有一個(gè)專門基于RuboCop檢查的插件:https://github.com/pderichs/sublime_rubocop
有強(qiáng)迫癥的碼工們可以都嘗試一下涨薪!