ものごとの到達段階¶
概要¶
色々やるけど浅いなぁと思ったりもしたので深いとは何ぞやをまとめてみる。ソフトウェアを意識してる。
段階¶
できるを3段階に分ける。
- 機能が実装できる
- キレイに機能が実装できる
- 省コストでキレイに機能が実装できる
※どんなことでもできると言っている訳ではない
説明¶
UNIX哲学の3つのシステムを流用させてもらいます。
実装できる機能も深さによって変わるけど、まぁそこはおいておく。
機能が実装できる¶
まずはとにかく機能を実装できる。「動かせる」という感じ。「動くじゃん!」が口癖
理論上動くはダメね。現実的な時間でね。
キレイに機能が実装できる¶
実装のときに、その概念にのっとった良いやり方、キレイな形式で実装できる。「美しい」とかが口癖
省コストでキレイに機能が実装できる¶
キレイにできた上で、省コスト。「ここが遅い」が口癖(?)。
省コストは…トータル的な省コストを考えてるんだけど、それじゃちょっと抽象的過ぎるので考えてみる
- 実装が省コスト
- 処理に省コスト
- 変更に省コスト
- 試験に省コスト
開発のコストと運用のコストなのかな。とりあえずこんなところにしてみる。
どこを省コストにするかはたぶん、トレードオフ。全体的に省コストなのが良いのは言うに及ばず。
省コスト狙うとキレイさが減る、トレードオフ。
省コスト狙い過ぎると機能が減る、トレードオフ。
省コスト目指してがんばるぞ。