По поводу кода — сделайте отступы и подсветите синтаксис(я обычно использую этот сервис).
А за статью спасибо. Пусть и перевод, но видно, что сил в него вложено больше, чем многие вкладывают в свои статьи. Плюсики и лучики добра Вам. Пишите ещё.
На это вам, наверное, никто однозначно не ответит.
Это как если бы вы выбирали автомобиль, то руководствовались какими-то нужными вам параметрами — скорость, универсальность, проходимость, комфорт, цена и т.д.
Так что ответа на ваш вопрос сильно зависит от ваших потребностей. Если таковых по сути нет, то посмотреть его стоит в любом случае. Там есть грамотные реализации паттернов и приёмов программирования, хороший код, подробный, но, порой, непростой мануал, да и Zend известная компания.
По поводу вашего вопроса вспомнил анекдот.
— Армяне лучше чем грузины.
— Чем?
— Чем армяне.
Как по мне, использование бизнес-логики в моделях также не очень верно, как и в контроллерах. Ведь модель по сути это операции по работе с данными, их получение, сохранение, обновление и т.д. Если меняется бизнес-логика приложения это может и не затронуть ни модель, ни контроллер, ни представление.
Хотя я видел бизнес-логику и в контроллерах и в моделях, а в самых запущенных случаях, и в представлениях, сам я, зачастую, инкапсулирую логику в отдельные классы, к которым обращаюсь в контроллере, а уже эти классы в свою очередь оперируют с моделью.
Поделитесь, как делаете вы?
Спасибо за статью, её я читал в начале работы с ZF. Не увидел больших разногласий с тем, что я написал выше. Модель так или иначе отвечать за данные, это могут быть данные из БД, данные от веб-сервиса, данные о пользователе и т.д. Именно такие модели я и использую в своих приложениях.
В статье предлагается создавать «толстые» модели, мне же кажется, что для логики можно создавать отдельный слой.
Вопрос был о бизнес-логики, которая может одновременно оперировать с несколькими моделями, и, по-моему, пихать такую логику в одну модель не совсем верно.
Возможно, это дело вкуса, но мне так удобнее.
Толстые модели включают в себя всю бизнес-логику, тот слой который вы предлагаете выделить по сути будет также частью модели. Ведь модель можно реализовывать очень по разному. Суть статьи в том что бизнес-логики не должно быть в контроллере, она должна быть отделена в виде модели.
Zend Framework советы и трюки