オブジェクト指向とモジュール化

OO(オブジェクト指向)は、モジュール化の考え方をもっと徹底させたものと言えるかもしれないが、OOで最も大切なのが、モジュール間の依存関係を複雑にしないということだ。いや、もっと言えば、「OOで」ではなくて、「プログラミング一般で」である。


ある意味これが全てであると言っても良い。抽象化だの、カプセル化だの単なるテクニックに過ぎない。抽象化は所詮、「処理」をより汎用化するためのテクニックで、依存関係が、よりになるだけのことである。単に、関係性をシンプルにするためのテクニックの一部に過ぎない。


しかし、それもキーになる部分ではあるので、それを言語サポートしているだけである。抽象化はOOで終わりではない!今後ますます抽象化は進む。


しかし、いつの時代になっても関係性を複雑にしないという考えは本質的な考え方であり続けるであろう。デザインパターンもこの視点から再勉強してみるつもりである。