≪ Today I learned. RSS購読
公開日
タグ
Architecture
著者
ダーシノ(@bc_rikko)

実在主義とモデリング

同僚に教えてもらった資料に実在主義とモデリングの関連性が語られていた。

モデリングと抽象化

モデリングとは、言うまでもなくモデルを作ることです。モデルを作るということは、抽象化を行い、理解できる範囲を広げることにもなります。 具体的なもの(インスタンス)の方が理解しやすいことがあるかもしれませんが、理解できる範囲が狭くなります。

『具体⇔抽象』トレーニングにも同じようなことが書かれていた。

抽象化は表現を広げる、具体化は表現を狭める

『具体⇔抽象』トレーニング](https://amzn.to/3LIiSAK)

名前の役割

名前で役割がわかるようにすることで、コードを読めば何が起きているのか、何をやろうとしているのかがわかります。

このあたりはリーダブルコードでも散々言われていることだ。

モデリングと実在主義

「モノ」は本質が実存に先立つ

「ヒト」だけが実存が本質に先立つ存在

データは単なる値です。適切な名前を付けることで「意味」を持ちます。適切な名前を付けることで「役割」を持つと言い換えることができます。

モデリングしていると、ある要素をクラスとロールのどちらにすべきか、迷うことがあります。

そのような時は、 「そのオブジェクトは生まれた時からそのクラスのインスタンスか?」と考えてみることで判断しやすくなります。 「存在が役割に先立つか」どうかで判断するわけです。