MVVM(Model-View-ViewModel)はC#/.NET1の世界で生まれたアーキテクチャーですが、今では他の世界(Androidとか)でも利用されています。 しかしながら、C#/.NETの世界から他の世界へ輸出される際に間違った解釈で移されていたり、言語・フレームワーク上の性質から妥協をしすぎて本来のMVVMとは言えないものまでMVVMと呼ばれていることもあります。 今回はそのMVVMの公理を定めて、「公理」から「定理」を導いてみようというものです。 アーキテクチャーを語るうえで重要なこと アーキテクチャー(および設計)は多種多様な価値観があり、それぞれの側面から見たら正解であり違う側面から見たら間違いであることがあります。 最初の考案者が提案したアーキテクチャーが進化と伝染を遂げるごとに最初に提示されたものとは違うものがそのアーキテクチャーとして認識されることもあるでしょう。
![MVVMとはなんぞやを公理から求めてみる - 滅入るんるん](https://cdn-ak-scissors.b.st-hatena.com/image/square/7e342974622254b53c8feea196d874090eb60082/height=288;version=1;width=512/https%3A%2F%2Fblog.meilcli.net%2F2018%2F10%2F21%2F165056.png)