«Едва ли не главнейшей функцией менеджера программного проекта должно быть воспитание позиции заботы об общей системе, ориентировки на пользователя.»

Фредерик Брукс «Мифический человеко-месяц или Как создаются программные системы».

Использование шаблонизатора при формировании представления (view) в контроллере

При формирования представления, по моему мнению, удобно использовать шаблонизаторы. У них есть много удобных и полезных возможностей, например, наследование шаблонов, фильтрация, функции, виджеты, переопределение блоков и так далее. Два из рассматриваемых нами фреймворков, а именно: Symfony и Laravel для формирования представлений предоставляют шаблонизаторы «из коробки», а вот Yii по умолчанию для этих целей использует чистый php, хотя не запрещает нам подключить и использовать в рамках фреймворка подходящий шаблонизатор.

Рассмотрим сначала как формируются шаблоны в Yii, а затем перейдём к рассмотрению вопроса использования в представлениях шаблонизаторов в рамках фреймворков Symfony и Laravel. Читать далее «Использование шаблонизатора при формировании представления (view) в контроллере»

Использование ORM для работы с БД

Перейдём к рассмотрению вопроса работы с базой данных. В настоящее время нет необходимости писать низкоуровневые SQL-CRUD-запросы для работы с сущностями базы данных, для этих целей созданы ORM (Object-Relational Mapping) обёртки, которые позволяют делать это легко и удобно в стиле ООП. Хотя все рассматриваемые нами фреймворки (а именно: Yii, Symfony и Laravel) не ограничивают нас в средствах работы с базой данных (то есть, если у нас сложная структура БД или нам нравится на каждое действие писать чистый SQL, то мы можем это делать беспрепятственно), однако имеют в своих арсеналах конкретные реализации ORM, которые заметно облегчают взаимодействие с БД. Читать далее «Использование ORM для работы с БД»

FunnyApp: разбираемся с роутингом

После того, как мы сделали обзор конфигурирования приложения, думаю будет логично рассмотреть, а как же устроен роутинг (routing) в каждом из фреймворков. Для этого предлагаю создать несколько страниц:

  • список организаций
  • список пользователей конкретной организации
  • подробная информация о пользователе
  • список категорий портфолио
  • список работ конкретной категории портфолио

Читать далее «FunnyApp: разбираемся с роутингом»