Symfony Open-Source PHP Web Framework <ul><li>JAM 1.1 </li></ul><ul><li>Яночкин Алексей </li></ul>
Что это такое? <ul><li>Фреймворк Symfony, это набор отдельных подфреймворков, который образует полноценный MVC framework (...
Модель <ul><li>Часть Symfony для работы с моделями может быть реализована с помощью Propel ORM. На основе описания базы да...
Представление <ul><li>По умолчанию, слой представления архитектуры MVC использует обычные PHP файлы в качестве шаблонов. <...
Контроллеры <ul><li>Часть Symfony, отвечающая за контроллеры и действия. </li></ul><ul><li>Задачи могут быть использованы ...
Конфигурация <ul><li>В Symfony, достаточно просто иметь различные конфигурационные настройки для различных окружений прило...
Отладка <ul><li>С помощью записи действий в журнал(log), отладочной веб панели и информативных исключений, Symfony предост...
Формы <ul><li>Поскольку работа с формами - это одна из самых утомительных работ для разработчика, Symfony предоставляет по...
Тестирование <ul><li>Библиотека lime, используемая для  модульных тестов , предоставляет большое количество методов тестир...
Плагины <ul><li>Плагин Symfony предлагает способ для упаковки и распространения подмножества файлов вашего проекта. Как и ...
Плюсы и Минусы <ul><li>Генерация админки </li></ul><ul><li>Быстродействие </li></ul><ul><li>Формы </li></ul><ul><li>Отладк...
Вопросы?
Спасибо за внимание http://www.symfony-project.org /
Upcoming SlideShare
Loading in …5
×

[JAM 1.1] Symfony (Alexei Yanochkin)

764 views
676 views

Published on

Symfony framework

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
764
On SlideShare
0
From Embeds
0
Number of Embeds
21
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

[JAM 1.1] Symfony (Alexei Yanochkin)

  1. 1. Symfony Open-Source PHP Web Framework <ul><li>JAM 1.1 </li></ul><ul><li>Яночкин Алексей </li></ul>
  2. 2. Что это такое? <ul><li>Фреймворк Symfony, это набор отдельных подфреймворков, который образует полноценный MVC framework (Модель, Представление, Контроллер). </li></ul>
  3. 3. Модель <ul><li>Часть Symfony для работы с моделями может быть реализована с помощью Propel ORM. На основе описания базы данных, оно генерирует классы для объектов, форм, и фильтров. Propel также генерирует SQL код, используемый для создания таблиц в базе данных. </li></ul><ul><li>Конфигурирование базы данных может быть сделано с помощью задачи или изменения конфигурационного файла . Помимо конфигурации, также возможно вставить начальные данные в базу, благодаря файлам с начальными данными (fixtures). Вы даже можете сделать эти файлы динамическими. </li></ul><ul><li>Объекты Propel могут быть с легкостью интернационализированны. </li></ul>
  4. 4. Представление <ul><li>По умолчанию, слой представления архитектуры MVC использует обычные PHP файлы в качестве шаблонов. </li></ul><ul><li>В шаблонах могут использоваться помощники (use_stylesheet() и тд) для повторяющихся задач, таких как создание URL или ссылок. </li></ul><ul><li>Шаблон может быть &quot;декорирован&quot; файлом layout для отделения заголовка и подвала (footer) страниц. Для того чтобы шаблоны были более универсальными, Вы можете использовать слоты, фрагменты и компоненты. </li></ul>
  5. 5. Контроллеры <ul><li>Часть Symfony, отвечающая за контроллеры и действия. </li></ul><ul><li>Задачи могут быть использованы для создания простых модулей, CRUD модулей, или даже для создания полностью рабочих модулей админки для моделей. </li></ul><ul><li>Модули админки позволяют Вам построить полностью рабочее приложение без написания какого-либо кода. </li></ul><ul><li>Для абстрагирования от технической реализации сайта, Symfony использует маршрутизацию, подфреймворк, который генерирует красивые URL. Для реализации веб сервисов, Symfony поддерживает различные форматы. Также Вы можете создавать свои форматы. </li></ul><ul><li>Действие может включать другое действие (forward) , или быть перенаправлено (redirect) . </li></ul>
  6. 6. Конфигурация <ul><li>В Symfony, достаточно просто иметь различные конфигурационные настройки для различных окружений приложения. Окружение - это набор настроек, которые устанавливают различные &quot;поведения&quot; на промышленном сервере или на сервере для разработки. Вы также можете создать новое окружение. </li></ul><ul><li>Конфигурационные файлы могут быть определены на различных уровнях и многие из них осведомлены об окружении: </li></ul><ul><li>app.yml </li></ul><ul><li>cache.yml </li></ul><ul><li>databases.yml </li></ul><ul><li>factories </li></ul><ul><li>generator </li></ul><ul><li>routing.yml </li></ul><ul><li>schema.yml </li></ul><ul><li>security.yml </li></ul><ul><li>settings.yml </li></ul><ul><li>view.yml </li></ul>
  7. 7. Отладка <ul><li>С помощью записи действий в журнал(log), отладочной веб панели и информативных исключений, Symfony предоставляет большой набор полезных инструментов для помощи разработчику в быстрой отладке кода. </li></ul>
  8. 8. Формы <ul><li>Поскольку работа с формами - это одна из самых утомительных работ для разработчика, Symfony предоставляет подфреймворе форм. Фреймворк форм поставляется с большим количеством виджетов и валидаторов. Одним из достоинств подфреймворка форм является тот факт, что шаблоны очень легко настраиваются. </li></ul><ul><li>Если Вы используете Propel, фреймворк форм, также сделает проще генерация форм и фильтров на основе ваших моделей. </li></ul>
  9. 9. Тестирование <ul><li>Библиотека lime, используемая для модульных тестов , предоставляет большое количество методов тестирования. Объекты Propel также могут быть протестированны при помощи выделенной базы с использованием выделенных начальных данных. </li></ul><ul><li>Функциональные тесты пишутся с использованием класса sfFunctionalTest, который использует эмулятор браузера и позволяет выполнять интроспекцию основных объектов Symfony при помощи тестеров . Существуют тестеры для запроса, ответа, пользователя, текущей формы, слоя кэша и Propel объектов. </li></ul><ul><li>Вы тааже можете использовать средства отладки для ответа и форм. </li></ul>
  10. 10. Плагины <ul><li>Плагин Symfony предлагает способ для упаковки и распространения подмножества файлов вашего проекта. Как и проект, плагин может содержать классы, помощники, конфигурацию, задачи, модули, схемы и даже стили (CSS) и картинки. </li></ul>
  11. 11. Плюсы и Минусы <ul><li>Генерация админки </li></ul><ul><li>Быстродействие </li></ul><ul><li>Формы </li></ul><ul><li>Отладка </li></ul><ul><li>Конфигурация </li></ul><ul><li>Propel </li></ul><ul><li>Консольный интерфейс </li></ul><ul><li>Стороние фреймворки </li></ul>
  12. 12. Вопросы?
  13. 13. Спасибо за внимание http://www.symfony-project.org /

×