そもそもMVCはオブジェクト指向ではない。 それは反オブジェクト指向である。 なぜならば、操作とデータを分離してしまうから。 オブジェクト指向ならば、オブジェクトとそれに対するメッセージの2つがあればいい。 データとその操作は全てオブジェクトの内部に隠蔽されなければならない。 もっともこの矛盾は実はかなり歴史的に深いものであり、 オブジェクト指向の元祖であるSmalltalkがMVCを採用したのが始まりだった。 オブジェクト指向とMVCの対立はその誕生の時点から存在していた。 これをどう解釈するのか。 MVCは誤ったデザインパターンとして排除するべきか。 それともオブジェクト指向の限界を認めてMVCを採用するべきか。 もっと難しい問題がある。 それはどのような場合にオブジェクト指向を採用して、 どのような場合はMVCを採用するべきなのか、 その境界をどうするのかという問題だ。 Smallt
![オブジェクト指向とMVCという矛盾 - Javaの日々](https://cdn-ak-scissors.b.st-hatena.com/image/square/2279a66233541e3a7ec0df7193bb8496db5c4f75/height=288;version=1;width=512/http%3A%2F%2Fjava-etc.cocolog-nifty.com%2F.shared-pleasy%2Fnifty_managed%2Fimages%2Fweb%2Fogp%2Fdefault.png)