- 更新日: 2014年3月13日
- Rails
Rails でコード行数を調べるあれこれ
スポンサーリンク
Rails アプリケーションのコード行数を調べる方法。rake stats では、基本的に Model, Controller とテストのコードの行数を確認でき、他のディレクトリは find + xargs コマンドで調べます。
【お知らせ】 英単語を画像イメージで楽に暗記できる辞書サイトを作りました。英語学習中の方は、ぜひご利用ください!
スポンサーリンク
rake stats で確認
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
$ bundle exec rake stats +----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC | Classes | Methods | M/C | LOC/M | +----------------------+-------+-------+---------+---------+-----+-------+ | Controllers | 268 | 213 | 9 | 25 | 2 | 6 | | Helpers | 51 | 36 | 0 | 3 | 0 | 10 | | Models | 115 | 88 | 2 | 7 | 3 | 10 | | Mailers | 0 | 0 | 0 | 0 | 0 | 0 | | Javascripts | 49 | 21 | 0 | 7 | 0 | 1 | | Libraries | 375 | 276 | 3 | 14 | 4 | 17 | | Controller specs | 39 | 30 | 0 | 0 | 0 | 0 | | Helper specs | 32 | 25 | 0 | 0 | 0 | 0 | | Lib specs | 273 | 233 | 0 | 0 | 0 | 0 | | Model specs | 511 | 373 | 0 | 0 | 0 | 0 | | Request specs | 1114 | 874 | 0 | 0 | 0 | 0 | +----------------------+-------+-------+---------+---------+-----+-------+ | Total | 2827 | 2169 | 14 | 56 | 4 | 36 | +----------------------+-------+-------+---------+---------+-----+-------+ Code LOC: 634 Test LOC: 1535 Code to Test Ratio: 1:2.4 |
Code to Test Ratio は、1:3 以上が理想らしいのですけど、実装の3倍のテストコード書くのは大変です。もう少しテスト書かないと。
ビューや Rake タスクの確認
rake stats では、ビューや Rake タスクは含まれていないので、find と xargs コマンドを組み合わせて自力で調べる。
ビュー。
1 2 3 |
$ find ./app/views -name "*.erb" | xargs wc -l |
rake タスク。
1 2 3 |
$ find ./lib/tasks -name "*.rake" | xargs wc -l |
xargs コマンドはなにかと便利です。特定のディレクトリのコード行数を調べたい場合は、どこでもこの方法が使えます。
スポンサーリンク
パーフェクト Ruby on Rails は、最近読んだ Rails 本の中では一番役に立った本です。Chef や Capistrano など Rails と共によく使用される技術にも触れてあります。Ruby on Rails 4 アプリケーションプログラミングは、入門的な内容で Rails の機能全体を網羅されています。
>> 次の記事 : Rails で Lightbox2 の使い方
- Rails の関連記事
- RailsでMySQLパーティショニングのマイグレーション
- Rails ActiveRecordでdatetime型カラムのGROUP BY集計にタイムゾーンを考慮する
- RailsプラグインGemの作成方法、RSpecテストまで含めたrails pluginの作り方
- RailsでAMPに対応するgemをリリースしました
- Railsでrequest.urlとrequest.original_urlの違い
- Railsでwheneverによるcronバッチ処理
- Google AnalyticsのRails Turbolinks対応
- Railsアプリにソーシャル・シェアボタンを簡単設置
- Rails監視ツール用にErrbitをHerokuで運用
- Facebook APIバージョンのアップグレード手順(Rails OmniAuth)
Leave Your Message!