モデルとは?

モデルと呼んでいるものをデータ構造としてとらえてプログラミングしていることが多かったのですが、実際にはデータ(状態?)とそれらのデータを操作するロジックの集合なんだなぁと最近よく思う次第です。*1
あぁ、これってオブジェクト指向のオブジェクトのことじゃん(汗)

MVC2 で言うところの分け方での私の認識は以下のようだったり。
V=View っていうのは、JSPだったりタグライブラリだったり、はたまたJSPに表示するデータをセッションに格納している部分だったり。
C=Controller はView層とModel層の仲介を行う部分かな。Viewからの入力によって処理を振り分けてたり。
じゃあ M=Model は?となると、残ったビジネスロジック的な部分がモデルになるわけだ(とおもう)。
これって、本とかに書いてあることそのままで当たり前のことなんだけど、実際のところ世の人たちはきちんと認識して使えているのだろうか・・・?モデルと呼んでいるものが、その実、ただの ValueObject(値を保持するためだけのオブジェクト) だったりしていないかい?(ww


モデルの設計を行うときにデータ主体で物事を考えてしまうので、ついついデータ構造≒モデルみたいなとらえかたで物をつくってしまうんだろうなぁと。C言語やってたせいかな?(w

*1:もっと早く気づけよ