なんつーか。
数学とか、哲学とか、言語学とか、論理学とか、心理学とか。
そういった学問ってのは、古くは紀元前の昔からあったわけです。
で、極めて大雑把に言えば、それらはある意味、現実世界のモデル化を行うわけです(それ以外にもいろいろやるだろうけど)。
それでですね。
オブジェクト指向っていうのも、現実世界をコンピュータの中にモデル化する手法なわけで。
共通点があるんですね。
別の側面から見てみると、例えばデザインパターン。
Template Method なんてのは、そうと知らなくても使っていたりしますよね。
デザインパターンってのは、要するにノウハウ集なわけです。
デザインパターンが偉大なのは、その暗黙知を明文化して整理して、なにより命名したという点にあります。…が、それは置いといて。
学問とオブジェクト指向の共通点を調べてみると、学問は知らなかったけれど、それに相当するオブジェクト指向上のノウハウは知っていた、とかあるわけですよ。学問版の Template Method みたいにね。
現場で積み重ねた経験と、学問上のセオリーが同じ形をしていた、というか。
そういう時、明文化された学問の方を知っているのといないのでは、出来上がりにちょっとは差が出てくるんじゃないかな? と思うわけです。
デザインパターンだけ本で勉強しても、現場の経験が無ければプログラムは作れない。
デザインパターンを知らなくても、現場の経験があればそこそこのものが作れる。
デザインパターンを知っていて、かつ、現場の経験があれば、すばらしいものが作れる。
この文中の「デザインパターン」を「諸学問」に置き換えても、同じことが成り立つと思うのですよ。
そういった、オブジェクト指向(に限らなくてもいいけど)に応用できるような学問を、オブジェクト指向に応用するために、という視点で、贅沢を言えば分野横断的に勉強できればナァ…という思いが、もう結構長いこと燻ってまして。
金をためて会社辞めて大学へ行くことを真剣に考えてます。
そういう切り口で書いてあるモノを読んでみたいと思っているのですが、誰か書かない?