писать код в том виде в каком это более быстро, удобно и эффективно.
Это подходы были придуманы для вполне конкретных архитектур и задач, где они решали вполне конкретные проблемы
попытка привнести "правильный" MV* паттерн туда где уже нет тех проблем и ограничений
Если это C - то у вас должен быть контроллер в явном виде. Если у вас какой-то код где-то выполняет некоторые функции контроллера, то это все равно не контроллер.
Моделей в классическом их виде в реакт приложениях тоже не пишут.
это язык-костыль, сляпанный кое-как (да в курсе, что ситуация исправляется, но не радикально
это язык с очень низким уровнем входа, соответственно, часто придется сталкиваться с плохим кодом, потому что большинство разработки на Javascript идет методом копипастинга кусков из Интернета