擬人化の視点

It is difficult to introduce both novice and experienced procedural programmers to the anthropomorphic*1 perspective necessary for object-oriented design.

そう、まさにこのオブジェクトを擬人化する視点*2の有無なんだろうな。だから、「車」や「人」みたいな擬人化させやすい概念は抽象データ型として認識できるんだけど、「受注」や「予約」みたいに擬人化させづらい概念(または今までただの伝票として扱ってきたモノ)を抽象データ型として認識するのには違和感を感じるんじゃないですかね。

あと。結局 Kent BeckWard Cunninghamの下へ行き着いてしまうのな。なんだか、お釈迦様の手の上で踊らされてる気分。

*1:擬人化された

*2:実践UMLでは The Animation Principleと呼ばれていた