泥沼になるその前に

プログラミングにおいて、ある問題を解決するのどんな手段が最適かを考えなければいけない場面はよくある。
というか毎日。

中にはたいした事でないのに一筋縄では行かない問題もあったりする。
まだまだ経験の少ない自分は大体、問題を解決するのに余計なコードを書き、問題を「回避」しようとする。
そういうことをすると大体の場合、泥沼にハマる。
SQLのクエリ回数を減らすのに処理方法を変えていたら、いくつのもプログラムファイルを書き換えないといけなくなってしまったり。
出力ファイルを文字コードを変換しようとしたら使用しているクラスでは出来なくて、根こそぎ書き換えなくてはいけなかったり。(実は出来た...)


少ない開発の日々を振り返ってみるとほとんどすべての問題はシンプルな解決手段が用意されていた。
しかも問題の「回避」ではなく「解決」で。
それは自分の曖昧な理解と、調べ不足が原因で泥沼化していたし、行き詰まって「あれ、何を解決したかったんだっけ?」
って思い直して始めに戻って、少し調べてドキュメントを眺めてみたら解決手段が見つかる。

熟練者は勘どころというか、泥沼化するある種の「匂い」が分かって、その辺の勘が鋭いんだろうなと思う。