ソースリーディング

社内の某FWのソースを読む。Webアプリのソースであり、言語はJava
・・・。はぁ。泣きたくなる。

  • クラス名が小文字から始まる
  • クラス名にアンダースコアが含まれている
  • ソースの中に文字列リテラルがありまくり(しかも日本語)
  • RuntimeException をキャッチしている
  • if チェックの中で左辺に定数を持ってきている。おそらく比較演算に == ではなく、= と書いてしまった場合にコンパイルエラーがでるからいよねということなんだろうけど、読みにくくて仕方がない
  • リソースをcloseするときに、nullチェックしてない(細かい)
  • 無意味な空行が多すぎる
  • イコールの前後に空白がない
  • 定数に final はついているが、static がついていない

あー、他にもいろいろキツイ。
複数人で開発をすると、どうしたってソースにばらつきが出てしまう。スキルの差や経験の差が個人差として現れるのだ。そのために規約というものがある。決め事、ルールである。このソースを見ているとそういう規約や方針がなく作られたのがありありとわかる。書き方がばらばらすぎる。

教訓

何事も最初が肝心。