ソースコードを書いている時、または、既存のソースコードを読んでいる時、こんな風に思うことがあります。
- ここバグってる。ToDoとして残しておいて後で対応しよう
- 冗長だな…。後で最適化しよう
こんな時に、ソースコード内にコメントを入れておいて、後で一覧形式で表示しようというのが今回の内容です。
Visual Studio Codeなど横断検索できるエディタを使っていれば、エディタの検索機能の方が楽かもしれません。
チーム開発で共通的な取り決めとして、またはRailsの小ネタとして、書きたいと思います。
バージョンと試行した環境
- Ubuntu 22.04.2 LTS
- Rails 7.0.4.2
Railsのソースコードにコメントを残す
コメントは、標準で以下の3つが用意されています。
# TODO:
# FIXME:
# OPTIMIZE:
TODO
はその名の通り、後で対応したい箇所に対して残します。
FIXME
は例えば優先順位が高い箇所に対して残します。
OPTIMIZE
は動作を維持したまま最適化したい箇所に対して残します。
コメント例としては、自分はこんなイメージで残しています。
# TODO: このチェックは必要?設計を確認
# FIXME: 次の○○対応時に合わせて対応が必要
# OPTIMIZE: 余計な繰り返しをしているので要最適化
残しておいたコメントを一覧形式で表示する
railsコマンドを使って一覧表示できます。
$ bin/rails notes
app/models/user.rb:
* [182] [TODO] このチェックは必要?設計を確認
* [236] [OPTIMIZE] 余計な繰り返しをしているので要最適化
app/controllers/users_controller.rb:
* [ 98] [FIXME] 次の○○対応時に合わせて対応が必要
検索対象とディレクトリ
bin/rails notes
コマンドによって検索されるディレクトリはapp、config、lib、bin、test
検索対象となるファイル拡張子は.builder、.rb、.rake、.yml、.yaml、.ruby、.css、.js、.erb
です。