レビューする時もされる時も、似たような箇所が指摘されてきたので、まとめてみました!
(リーダブルコードも買ったから、あとで読んで追記していきたい。)
【Tips1】 命名大丈夫?
【Tips2】 説明的なコメント❌WHYに答えるコメント⭕️
【Tips3】 エラーハンドリング足りてる?
- 関連質問
- そこのfindでnilが渡されても大丈夫?
- params[:hoge]がnilでも大丈夫?
- rescueしなくていいの?
- 対処法
-
return if hoge.nil?
などで、途中で返す -
hoge&.id
を用いる - Railsアプリにおけるエラー処理の考え方
-
【Tips4】 パフォーマンス大丈夫?
- 関連質問
- mapで回す必要ある?
- flattenじゃないとだめ?
- N+1問題起きてない?
- countのかわりにsizeを使お
- exist?のかわりにpresent?を使お
- allのかわりにfind_eachを使お
- mapじゃなくてpluckでよくない?(使い分けよ)
- キャッシュや非同期処理の導入を検討しよ
- パーシャル(部分テンプレ)を繰り返しrenderする時、eachのかわりにcollection使お
- メモ化しよ(キャッシュの利用)
- etc
- 対処法
- mapで回す必要ある?
- [Ruby] 配列の結合と展開
- [Ruby] 配列の結合について
- N+1を改善する
- countではなくてsizeを使用する
- exist?の使用を控える
- allのかわりにfind_eachを使お
- 【Rails】メモリや実行時間を意識したpluckとmapの使い分け
- 不必要なActive Recordオブジェクトの生成
- キャッシュや非同期処理の導入を検討する
- Railsアプリが爆速になるパフォーマンスチューニング集(テーブルデータのキャッシュ化
, モデルのバリデーション無効化) - 改善ツール1
- 改善ツール2
- パーシャルをrenderする際のパフォーマンスに関する注意点
- メモ化する
【Tips5】 その他
参考記事