バグはテストで見つける前提?

ゆっくり書いてる時間無いし、どうせテストするんだからバグはテストで見つければいい、と言って適当なコーディングばかりするプログラマーがたまにいます。

確かにテストはバグを見つけるためのものですが、品質の悪いプログラムのテストほど効率の悪いものはありません。
テスト⇒修正⇒テストの繰り返し回数が必要以上に多くなってしまいます。

そこで変数を初期化する意味は?

無意味な変数初期化によって、メモリ消費量を無駄に増加させてしまっているコードをよく見かけます。

例えばこのように、変数を一旦初期化した後にメソッドの戻り値や別の変数で上書きしているコードです。
丁寧な書き方だと勘違いしているのかもしれませんが、これは行数とメモリ消費量が無駄に増えてしまうだけで、初期化する意味は全くありません。

メンバー変数は「共用変数」ではない

メンバー変数をメソッド間の値の受け渡しに使用しているケースを見かけますが、あまり良くないやり方です。

おそらく、メンバー変数のことを、「クラス内のどのメソッドからでも参照できる変数」と解釈しているのだと思います。
しかし、それは結果としてそのような使い方もできるだけであって、本来の用途とは異なります。

return文は条件式も設定できる

条件式の結果をそのままreturnすればいいのに、余計な判定処理を挟んでいるケースをよく見かけます。

そうした方が読みやすい場合も確かにありますが、大抵の場合は可読性とパフォーマンスを低下させるだけの無駄な処理になってしまっています。

例えば、このようなコードです。

複雑な処理を複雑に書くのは簡単

やたら複雑なコードを書くことで達成感を感じているプログラマーがいますが、彼らは根本的に勘違いをしていると思います。

複雑な処理を複雑に書くというのは、裏を返せば何の工夫もせず仕様をプログラムに直訳しているようなもので、プログラムの基礎さえ理解していれば誰にでもできてしまう簡単なことです。