MVC - это вообще не паттерн. По крайней мере, в вебе. Декомпозиция непонятно чего непонятно как. Каждый понимает, как он хочет. Термин, который столь расплывчат, лучше не использовать вообще - от этого одни проблемы.
Скажем, разработчики flux
противопоставляют свой подход MVC, наивно
полагая, что MVC - это то, как сделано в Ruby on Rails. При этом их подход есть ни что иное, как чуточку переиначенный CQRS. Судя по используемым ими терминам, они были не в курсе, что такое CQRS, и изобрели его заново.
На мой взгляд, CQRS-подход намного ближе к первоначальной идее MVC в том виде, как она была сформулирована для десктоп-приложений, чем так называемый MVC в RoR и клонах.
Повангую немного: лет через пять, когда гугл научится полноценно
индексировать данные (а не страницы), стомегабитный интернет будет доступен повсеместно, и браузеры даже на самых дешевых китайских андроидах будут спокойно переваривать тяжелые DOM-манипуляции, большинство веб-сайтов станут одностраничными веб-приложениями (точнее, под страницей будет пониматься не отдельный HTTP-запрос, а состояние конечного автомата, отображаемое на URL), и классический MVC достанут с пыльных полок (или изобретут заново), дополнив блекджеком и шлюхами. Собственно, react и flux появились в фейсбуке как раз-таки с целью починить чатик с его вечными race conditions.