Какой профит в архитектуре приложения React + MobX + TS + OOP?
Если абстрактно ответить на этот вопрос, то профит - огромен. MobX - прекрасный фреймворк и позволяет писать поддерживаемый код. Намного лучше той лапши, которую пропагандирует Редакс.
Если углубляться в ваш пример, то выглядит всё странно. Например, мне совершенно непонятен этот пункт:
В том числе у нас теперь по правилам OOP есть view, model, controller - что собственно из маленького компонента делает огроменный компонет и еще в трёх файлах.
Компоненты Реакт - это исключительно View. Нету никакой логики делать model-компоненты, ибо
вся модель лежит где-то в области MobX в файлах с расширением .ts. Реакт - это вьюшка и то, что они пишут модель и контроллеры во вьюшке - это странно.
this.addCssClassIf
- пример того, где злоупотребляют наследованием там, где, очевидно, нужна композиция.
functional component
В Ф.К. лично я смысла вижу мало. В любом приложении нужны классические компоненты. Так зачем пользоваться двумя типами компонентов, если можно пользоваться одним.
pure
Чистый pure (простите за тафтологию) в Реакте встречается редко. Обычно только в каких-то мелких вьюшках. И pure как самоцель, на самом деле, не нужна, если только вы не гонитесь за временным хайпом.