‫クリーンコードという考え方について手短にお話ししたいと思います｡ これは以前にもお話ししたことですが､
‫関数のようなもので行うのが良い例です｡
‫例えば､ ある数字が偶数か奇数かをチェックする関数があったとします｡
‫では､ 言ってみましょう｡
‫数値を取り込む関数として､ 奇数か偶数か｡
‫そして､ どうやって確認するんだ､ という声が聞こえてきそうです｡
‫まあ､ モジュロ演算子を使えばいいんですけどね｡
‫なら言える｡
‫2のモジュロ数､ つまり余りを出すことを忘れないでください｡
‫そして､ 偶数なら余りは必ず0になる｡
‫つまり､ これで偶数かどうかがわかるわけです｡
‫だから､ 偶数なら
‫では､ 帰ってきてほしい｡
‫本当です｡
‫そして､ 偶数でない場合は､ だから痺れるとしよう｡
‫へ｡
‫イコールではない｡
‫ゼロです｡
‫だから､ これが奇数なら必ず余りが出る｡
‫その場合､ falseを返す｡
‫そこで､ この関数をもっとわかりやすいものに変えてみましょう｡ それでも､ この関数はtrueを返すことになります｡
‫もし､ それが偽りであっても｡
‫イーブンでない場合｡
‫ここで､ 偶数で50を与えて実行すると､ ああ､ エラーが出ますね､ ここでLのif文があることを確認しなければならないからです｡
‫ここで印刷しなければならないのです｡
‫では､ プリントをやってみましょう｡
‫そして､ 「実行」をクリックします｡
‫51して実行をクリックするとtrueが出ます｡
‫偽物が出る｡
‫わかりました｡
‫動作しているようですが､ このコードをきれいにするにはどうしたらよいでしょうか｡
‫さて､ ここからが本題です｡
‫実際にこれをもう少しタイトにする方法もあります｡
‫例えば､ 偶数かどうかだけをチェックするのであれば､ 本当はもう一度チェックする必要はないのです｡
‫2のモジュロが0にならない場合､ つまり2で割った数の余りが常に0になるとは限らない場合｡
‫それはまあ､ おあいこだろうということは､ いつもわかっています｡
‫だから､ この文言も必要ないんです｡
‫他言すればいいんです｡
‫そうですね｡
‫これを実行すればいいように｡
‫これは今でも有効です｡
‫すみません｡
‫そこで､ コードを少し整理してみました｡
‫しかし､ ここからが本題です｡
‫もうひとつは､ returnが自動的に関数を超過することが分かっていることです｡
‫だから､ 声明も必要ない｡
‫ステートメントが正しくないと5行目までしか表示されないので､ ここでreturnと言えばいいんです｡
‫だから､ うまくもない場合は､ 4行目を飛ばして5行目に行くので､ これを実行すると｡
‫これはまだ使えるぞ？
‫でも､ これをもっときれいにすることはできますよね？
‫なぜなら､ 今はただ戻ってきただけだからです｡
‫真偽のほどは？
‫そして通常､ このようにtrueとfalseを直接返すような場合は､ より良い方法があります｡
‫それは､ booleanに評価される式を使うことです｡
‫私たちが実際にできることは､ 「ねえ､ これを全部取り除いて､ あなただけ帰ってきてほしい」と言うことだけです｡
‫こんな感じ｡
‫そして､ これを実行すると
‫まだ作品はある｡
‫そして､ もし私が50
‫なぜなら､ ここで言っているのは､ この値が何であれ返して欲しいということだからです｡
‫そして､ これは式数で､ 直接true falseを評価することになります｡
‫つまり､ 以前とまったく同じ結果が得られるわけですが､ 見てください､ この方がよっぽどきれいです｡
‫それはまさに素敵でシンプルなコードです｡
‫開発者として､ ここに来てすぐにそれを確認することができるのですか？
‫わかりました｡
‫evenは､ この操作を行い､ trueかfalseを返すだけなのでしょうか？
‫つまり､ これはクリーンコードについて考える良い方法なのです｡
‫どうすればコードをきれいにできるのか？
‫そして､ 完璧な解決策はないということも肝に銘じておいてください｡
‫しかし､ このように考えることで､ 上級プログラマーのような考え方ができるようになります｡
‫次回作でお会いしましょう｡
‫バイバイ｡