Работаю фронтендером давненько, работал с 
AngularJS, сейчас с 
React больше, но суть такая, что большинство проектов с которым я работал (хоть многие были и немаленькие), с ними никто не изощрялся и делал по простой схеме best practices как совейтуют евангелисты из интернета. Но так сложилось, что последние пару проектов в команде большинство, так называемых гуру ФУЛ-СТЕК - это те, которые на самом деле Дотнетчики и фигачат вёрстку position: absolute вообще везде.
Вопрос по фронту (в частности 
React):
Лид переписал базовые компонент 
React, добавил свои правила и базовые функции в том числе и 
render,
теперь мы пишем так:
internalRender() {
        this.addCssClass(className);  // Этот классней приходит из пропсов
        this.addCssClassIf('required', isRequired); // этот метод тоже вместо тернарного оператора, если у нас вдруг что-то required
return (
  <Какой-то-компонент  className={this.renderCssClasses()} />
)
}
Так же у нас теперь 
OOP, 
 functional component у нас теперь нет, 
pure тоже, мы теперь всегда наследуемся только от чудо изобретения.
В том числе у нас теперь по правилам 
OOP есть 
view, model, controller - что собственно из маленького компонента делает огроменный компонет и еще в трёх файлах.
Внимание, вопрос знатокам!
Какой профит от данного подхода?
В чем, собственно преимущество?
Лично я пока-что не вижу привычного React, не вижу преимущества, первое что приходит в голову "how to make simple things complicated".
Уже не первый раз с таким сталкиваюсь, но впечатление будто бекендщики просто хотят писать код так, как им это привычно.