どうも。今回は「!」のついているメソッドとそうでないメソッドの運用について簡単にお伝えしておきたいと思います。
結論から言うとプロジェクトによるのですが、初心者の場合であれば、全部「!」つけておいてOKということです。
Railsで「!」をとりあえずつける運用
ActiveRecodeの「!」付きのメソッドを見たことがあると思います。
例えばsave!みたいな感じですね。
この「!」のあるなしですが、以下のような違いがあります。
「!」なし
バリデーション失敗の時に、例外を起こさない
「!」あり
バリデーション失敗の時に、例外を起こす。(ActiveRecord::RecordInvalid)
基本的にはうまく使い分けることで、よりわかりやすいコードを書くことができます。
ですが、どんな時に使い分けたらいいのか分からないということはありませんか?
そういう時は基本的に例外を起こしておこしておけば安心という考え方になります。
ただしこれもプロジェクトによって、使い分けが必要だったり、全く「!」を使っていなかったり色々です。
とにかく自分で作る時には、!をつけまくっておけば問題ないのかなと思います。
※例えばrails cとかで、新たにレコードを作る時にも!つけといて問題ないです!
以上です!