無欲速、無見小利;欲速則不達、見小利則大事不成。
——『論語』
最近、Phoenix から Rails に移行したプロジェクトをリファクタリングしています。
自分で使っている個人プロジェクトなので、機能を追加するときは事前に計画を立てず、「とりあえず書いてみる」スタイルで進め、問題が出たら後から少しずつ改善する、というやり方をよくしています。
でも、このやり方には明らかな副作用があります。
新しく追加したコードが、元々の構造を混乱させ、保守しにくくしてしまうのです。
そんなとき、ジレンマに陥ります——
とりあえずこのまま使うか、それとも時間をかけて徹底的にリファクタリングするか。
現状を維持するのは気持ちが落ち着かず、
リファクタリングにはさらに時間がかかる。
そこで、自分に問いかけ始めました——
実は、書きながら直すより、手を動かす前に少し時間を取って、次のことを明確にしておくほうがいいのです。
何を実現したいのか?境界はどこか?この部分の責務は何か?
準備が整えば、コードも自然とすっきりします。
「考えてから書く」のは一見遅そうですが、実はもっと速いのです。
『ジョジョの奇妙な冒険 スティール・ボール・ラン』の名台詞にある通り——
ジョニィ、次は Lesson 5だ。遠回りこそが最短の道だぜ。
収集品を手に入れた· Item get
朝露のキノコ
ノーマル
- 地方
- 旅人の森
- 生息地
- Rails · エッセイ
- 発見日
- 冒険時間
- 2 分
この冒険を読み終えて手に入れた。読む人が増えるほど、レア度が上がる。

コメントを読み込み中…