悪いプログラムを書かないようにするには?

「良いプログラムとは?」と聞かれると結構千差万別ですが、悪いプログラムはえてして共通してます。

で、その悪いプログラムを書かないようにするには、「適切な名前を付ける」ことが簡単でおススメです。

深く考えていくと難しいのですが、コード上ですぐできるという意味では非常にお手軽で効果も高い。

お買い得なのです。

 

悪い例

WS000166

checkとはいったいなんなのか?

checkとは値を変えることも含む言葉なのか?

そもそも$dataとは何を投げればいいのか?

困りものです。

 

「この関数・クラスはそもそも何をやっているのか?」を明示しましょう。

 

改善1

WS000169

and多すぎ。

名前を明示すると「ちょっとこの関数でやりすぎじゃないか?」と感じますね。

現状を隠さずはっきりと見つめることで問題が浮かび上がってきます。掃除やダイエットと同じです。

 

さらに改善

WS000170

 

何が必要なのかわかってきましたね。実はclient_id以外はいらなかったのです。

さらに名前もコードも呼び出すときに必要あれば追加すれば良かったのです。チェックする人が勝手に直したら隠蔽です。

 

めでたしめでたし。

これで後からプロジェクトに参加する人も楽しく働けましたとさ。