Как определиться с фреймворком?
Мне не понятно, это разделение фреймворков на группы, что они делают и для каких задач предназначены фреймворки из первой группы и из второй?
1-я группа работает на клиенте (в браузере)
2-я группа работает на сервереПочему они так разделены?
Разные платформы выполненияИспользуют ли их вместе, или только один?
Зависит от проекта.Какие задачи решают фреймворки из первой и второй группы?
1-я БЛ (бизнес логика) отображения и взаимодействия с пользователем
2-я БЛ обработки данных и взаимодействия с клиентом (браузером)Для какое задачи достаточно будет знать только ангуляр, а для какой только рельсы?
Только Angular - задачи frontend
Только Rails - задачи backend
можно разделить по технологиям php фремворки, javascript фремворки и css фреймворки и т.д. Традиционно серверная часть пишется на php, а клиентская на javascript, украшено все это css.
Но можно обойтись одним, можно использовать несколько. Выбор кол-ва и типов зависит от проекта. Я например большую часть проектов делаю php фреймворке yii2 и css фремворке bootstrap3, который там подключен из коробки. Вполне самодостаточная связка. И хотя yii2- это php, bootstrap3- это css , они одержат кучу фишек на javascript (на jquery, если быть точным). Так что четких правил и границ тут нет. Лучший способ понять - начать делать. Возьмите yii2 и попробуйте.