Ну была бы моя воля я бы выкинул все конструкторы и писал бы на $connection->createCommand
Що занадто - то не здраво.
Писать нейтивный SQL имеет смысл там, где это востребовано.
Как по мне, 2 строчки native запроса читать удобней чем 10 строк конструктора.
Верно, только конструктором не так уж и часто пользуются. Вы тут про AR спрашивали, конструктор запросов - это совсем из другой оперы.
В том же Yii2 ваш SQL будет выглядеть так:
Product::find()->withCategories()->all();
Просто интересует момент, не будут ли бить по рукам за то что не использую AR?
Если не используете из принципа - будут. Если не используете там, где AR налагает слишком большие расходы - не будут.
первым взял Yii2 , подскажите плиз, есть ли вообще смысл в ActiveRecord... им реально кто-нибудь пользуется?
Пользуется, причем активно. Я бы правда рекомендовал Entity-Repository, вместо AR, но последний тоже имеет право на жизнь.