飽き性のツール開発戦略
以下の投稿を読んで、うんうん、そうだと頷きました。
私も非常に飽きっぽい性格をしています。あるいは、スタート時点で凝りすぎて、それがコリを呼び、結局懲りてしまうみたいなことがあるのかもしれません(ダジャレです)。
で、最近開発しているTextboxでは、その自分の「飽きっぽさ」を念頭に置いています。
一つには、各ページのデザインをゼロからデザインできるようにしていること。このおかげで、それぞれのページが違ったデザインを持っているのですが、その結果「一つのビューに飽きた性でなし崩しに他のページすべてにも嫌気がさす」という事態が避けられています。
で、飽きたら飽きたでそのページのデザインを変えちゃえばいいのです。それぞれのページが別のデザインを持っているので、どこか一つのページの変更が他に及ぶことがありません。逆に言えば、気軽にデザイン変更できるのです(プログラミングの高凝集かつ疎結合な状態)。
もっと言えば、これはデザインだけに限りません。機能(メソッド)に関しても同様です。
何か導入してみたい機能があったら、その機能を持つページを作ります。本体(index.js)に書くのではなく、その個別のページに書くのです。こうしておくと、後から飽きても、単にそのページを使わなければよいだけであり、本体部分に影響はまったく起こりません。いくらでも好きなだけ飽きていけます。
以上は、個人的には大きな発見でした。プログラミングの高凝集かつ疎低結合はコードの書き方としてのフレームワークですが、私がやっているのはツールの構成にそれを適用したものです。
大きな箱庭としてのTextboxがあり、個別の機能を実装するためのページがある。その二つの組み合わせは、飽きっぽい私でも同じツールを長い間使い続けることを可能にしてくれています。


