最初は小さくていい
Pythonで書くスクリプトの多くは、
最初から「大きな設計」を必要としません。
むしろ最初は、
- 1ファイル
- 数十行
- 自分だけが使う
このくらいの規模で十分です。
問題が起きるのは、
そのまま大きくなってしまったとき です。
書き捨てのまま育ってしまう
小さなスクリプトは、
だいたいこんな流れで成長します。
- とりあえず書く
- 便利だから使い続ける
- 条件を足す
- 例外を足す
気づいたときには、
「最初に書いたつもりのコード」が
中心に居座っています。
育てるとはどういうことか
スクリプトを育てるとは、
- 行数を増やすこと
- 機能を詰め込むこと
ではありません。
大事なのは、
- 役割を分ける
- 名前を付け直す
- 境界を引き直す
という 整理の作業 です。
小さな分割を恐れない
たとえば、最初はこんな形でも問題ありません。
def run():
rows = load_csv()
rows = filter_rows(rows)
rows = calculate(rows)
save(rows)
この形を保ったまま、
- 中身を差し替える
- 関数を別ファイルに出す
といった変更ができるようになると、
スクリプトは自然に育っていきます。
育てる判断のタイミング
すべてを最初から分ける必要はありません。
目安になるのは、
- 同じ修正を何度もしている
- 説明が面倒になってきた
- 触る前に考える時間が増えた
と感じたときです。
その時点で、
一段階整理する だけで十分です。
作って分かったこと
このテーマを通して分かったのは、
- 小ささは武器になる
- 育てるとは整理すること
- 先回りより、立ち止まり
ということです。
おわりに
この話は、
小さなスクリプトをどう扱うかを
設計の視点で整理した記録です。
次は、
「関数と責任の境界」という、
もう少し具体的な話に進みます。


コメント