RubyKaigi 2018 直前!チーフオーガナイザ・松田明さん特別インタビュー
今回はRubyKaigi2018開催直前ということで特別にRubyKaigi チーフオーガナイザの松田明さんにインタビューしてきました。数ある松田さんのインタビュー記事の中でも、あまり目にすることのない「コードレビュー」や「レビュー自動化」を中心に、お話をお聞きしてきました。
今回はRubyKaigi2018開催直前ということで特別にRubyKaigi チーフオーガナイザの松田明さんにインタビューしてきました。数ある松田さんのインタビュー記事の中でも、あまり目にすることのない「コードレビュー」や「レビュー自動化」を中心に、お話をお聞きしてきました。
Ruby on Rails を使ったシステム開発では The Rails way や Rails 流と言った開発手法に沿って行うことで高い生産性を保持できるようになります。つまり流儀をきちんと学び、それに従って開発するのが大事です。
そうした流儀、ベストプラクティスをチェックできるツールが rails_best_practices になります。単に文章などで読むだけでなく、コードを静的解析して指摘するツールを使うことで、何が間違っていてどう書くべきなのかがはっきりと分かるようになるでしょう。
Rails の登場によってRubyが世界中のWeb開発に使われるようになっています。Rails はとても高機能で便利なフレームワークですが、何でもやってくれる安心感からか、セキュリティに気を配らずに実装されてしまうケースも見受けられます。適当な書き方をしてしまうと、 容易にセキュリティインシデントの原因となるコードを産んでしまうでしょう。
皆さんはコーディング規約に沿ったコードを書いているでしょうか。そもそも自社にコーディング規約が存在しないという企業も多いかと思います。もちろん、コーディング規約を定めること・沿うことが一概に良いとは言えませんが、コーディング規約自体は企業単位でなく、コミュニティレベルでも作られているので一度見てみるのはいかがでしょうか?
Rubyのソースコード解析ツールであるRuboCopはRubyコミュニティによるRubyスタイルガイド(英語/日本語)や他のスタイルガイド(例えば当社の提供しているMeowCopなど)に準拠しているかどうかを自動チェックしてくれるソフトウェアです。
綺麗なソースコードを書くためにはコーディングスタンダードに従って書くのが一番です。Rubyでは幾つかソースコードを静的解析してくれるツールが存在します。一番有名なところとしてはRuboCopではないでしょうか。
RuboCopは rubocop
コマンドでRubyプロジェクトを解析してくれます。そしてRuby on Railsで作られたプロジェクトについても対応しており、Rails特有の問題点についても指摘してくれるようになります。
JavaScript用lintツール、JSHintの入門用の記事です。
JavaScript用lintツールで歴史の長いツールです。2011年ほどからあります。
JavaScriptコードのエラーや潜在的な問題を検出するのに役立つツールです。
Railsのベストプラクティスを教えてくれるgem, rails_best_practicesの使い方や設定のおすすめを紹介いたします。
rails_best_practicesはRailsのベストプラクティスを投票しあうサイト、Rails Best Practicesの投稿をまとめて、コードがそれにそっているかをチェック、どう変えたほうが良いかをアドバイスしてくれるツールです。
RuboCopというRuby向けの静的解析ツールについてご紹介致します。
SideCIでも昨日からRuboCopによる自動コードレビュー機能がお使いになれるようになりました。ぜひこの機会にRuboCopをお試し頂ければと思います。
RuboCopについて、RuboCopのRails向けオプション、バグに繋がりやすい内容だけを検出するlintオプションなど、規約以外の部分で役に立つオプションについても紹介しておりますので、ぜひご一読下さい!