「仕様通りに動くものを綺麗に仕上げること」の難しさ

むむむ…わからん…

プログラマーとして働き出して累計で1年近くになります。いろいろあったので「累計」って書いてますが、それはまた別の話…

この一年、与えられた仕事にぶつくさ文句を言いながらもなんとかこなしていった結果、とりあえず「仕様通りに動くもの」は書けるようになりました。嬉しい!

ところが、次のステップ「仕様通りに動くものを『綺麗に仕上げる』」。これの壁が高すぎて泣きたくなりますよぉ〜。

今のプロジェクトでは書いたコードを本番環境に組み込む前に、レビューが必ず入ります。レビューしていただくのはかなり優秀で仕事のできるプログラマーの方。
…まぁ僕の書いた「とりあえず動いて満足してる」みたいなコードは隅々までチェックが入り、指摘事項の嵐で返されるわけです。

しかし!!
ようやくこれは指摘されるぞ!みたいのの雰囲気がつかめてきました!(じゃあ対策しろよ、言われます。ごもっともです…)

まず、圧倒的に多いのが「変数名・関数名がわかりにくい!」というもの。
なんせ僕はようやく動くのが書けるレベルなので、なかなかそこまで手が回らない…尚且つ、言語というものにてんで疎いので名付けるのはほんと毎回苦労します。

次に、「処理がわかりにくい!」という指摘。
長ったらしい変数名、何重ものループ、複雑な条件文で待ち構える分岐、などなど…冷静になってみると「それ自分でもわかりにくいだろ?」という箇所があったり。

NEXT!!「タイポ!!」。
これは自己責任です…IDE使ってやってるのにタイポするとか…本当に申し訳ない。

あとは、「ここは処理をまとめましょう」と言ったり「ここは⚪︎⚪︎の関数を使いましょう」などの実装に関わること。

…というわけで、これらのレビューから導かれる結論は「動いたからって満足してるなよ?一緒に開発してる人のこと考えてもっと精進しろよ?」ということだと思います。
はい、頑張ります…