OOを使う意義について

前回のエントリから引き継いで、OOについて考えてみました。
でも、正直まだ明確になってないです。


そもそも、オブジェクト指向の「オブジェクト」とは何ぞや?を簡単に説明が出来ないから、OOというものに誤解を与え、難しいという印象を抱かれているのではないか?というのがこのブログでオブジェクト指向を取り上げた一番の理由でした。結局、それを簡単に説明するのは難しく、やはり誤解を払拭できないのかなとやや諦めていたのと、Teedaなど他に興味が行ってしまったのでちょっと放置してしまいましたが、もう一度対峙してみます。


そもそもOOでよく言われる「現実世界とシームレスにプログラムを繋ぐ」というのは残念ながら幻想で、「モデルとシームレスにプログラムを繋ぐ」という解釈の方がしっくりくると思ってます。(特に、仕様ホルダーから「この業務に関する機能はどんな感じなのよ?」といった説明を受ける時に、仕様ホルダーが裏紙にガリガリ書いているアレです。あれとのマッチングは相当なもんではないでしょうか?)


それはOOとは、実際にはあくまで「プログラムを作る」「システムを構築する」為の技法だからであって、現実世界を描く為の技法ではないからなんでしょう。


いつかにつづく。