Как стать автором
Обновить
-11
0
Александр @n0wheremany

Пользователь

Отправить сообщение

Как переиспользовать код с бандлами Symfony 5? Часть 1. Минимальный бандл

Время на прочтение8 мин
Количество просмотров12K

Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и релизного цикла бандла.


В первой части:


  • Зачем нужны бандлы
  • Example Project: Calendar
  • Настраиваем окружение: 2 способа разработки
  • Создаем минимальный бандл
  • Подключение бандла в проект
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии1

Как переиспользовать код с бандлами Symfony 5? Часть 2. Выносим код в бандл

Время на прочтение8 мин
Количество просмотров3.9K

Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и релизного цикла бандла.


В предыдущей статье мы создали минимальный бандл из двух файлов и подключили его в проект.


В этой статье:


  • Перенос кода в бандл
  • Dependency Injection: регистрация сервисов бандла в DI-контейнере
  • Перенос контроллеров и настройка роутинга
  • Механизм определения путей к ресурсам
  • Перенос шаблонов в бандл
Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии2

Как переиспользовать код с бандлами Symfony 5? Часть 3. Интеграция бандла с хостом: шаблоны, стили, JS

Время на прочтение8 мин
Количество просмотров2.1K

Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и релизного цикла бандла.


В предыдущей статье мы вынесли в бандл основной код и шаблоны, настроили роутинг и подключение сервисов в Dependency Injection контейнер. В этой статье будем встраивать бандл в приложение-хост:


  • Интеграция шаблонов: 2 пути
  • Интеграция шаблонов: независимый модуль
  • Подключение стилей бандла в сборку
  • Интеграция шаблонов: встраивание в шаблоны хоста
  • Переопределение стилей и JS
Читать дальше →
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Как переиспользовать код с бандлами Symfony 5? Часть 4. Расширение бандла в хосте

Время на прочтение10 мин
Количество просмотров5.3K

Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и релизного цикла бандла.


Проектируя бандл, надо думать, что должно быть инкапсулировано внутри него, а что — доступно для пользователя. Должен ли бандл иметь фиксированную функциональность или быть гибким и позволять себя расширять? Если требуется гибкость, то нужно предусмотреть какие-то точки-интеграции для расширения бандла, его интерфейс.


Попробуем предусмотреть такие точки в нашем демо-приложении. В этой статье:


  • Подключение пользовательской логики к бандлу
  • Работа с тегами
  • Compiler Pass
  • Автоконфигурация сервисов
Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии6

Как переиспользовать код с бандлами Symfony 5? Часть 5. Конфигурация

Время на прочтение8 мин
Количество просмотров2.8K

Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и релизного цикла бандла.


В предыдущей статье говорили о том, как расширять функциональность бандла в приложении-хосте с помощью тегов. В этой статье добавим бандлу гибкости: создадим конфигурационный файл и определим несколько параметров.


  • Параметры DI-контейнера и их переопределение
  • Файл конфигурации бандла
  • Работа с конфигурацией
Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии0

Как переиспользовать код с бандлами Symfony 5? Часть 6. Тестирование

Время на прочтение8 мин
Количество просмотров2.8K

Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и релизного цикла бандла.


В предыдущей части мы создали конфигурацию бандла. В этой статье разберем как тестировать бандл, напишем несколько тестов и создадим внутри бандла микроприложение для их запуска.

Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии5

Как переиспользовать код с бандлами Symfony 5? Часть 7. Релизный цикл, установка и обновление

Время на прочтение10 мин
Количество просмотров2.3K

Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и релизного цикла бандла.


В предыдущих статьях серии мы вынесли переиспользуемый код в полноценный бандл, настроили и протестировали. В завершающей статье поговорим о жизненном цикле бандла: от установки до релизного цикла.


В этой статье:


  • README.md
  • Установка: через composer, рецепты Flex, консольные команды
  • Релизный цикл, выпуск новых версий
  • Семантическое версионирование
  • Фиксация изменений в CHANGELOG.md
Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии0

Promises 101

Время на прочтение4 мин
Количество просмотров26K

Перевод первой части отличной статьи про промисы. Базовые приемы создания и управления промисами.


Промисы используются для операций, вычисление которых занимает неопределенное время. Примером подобной операции может быть сетевой запрос, когда мы запрашиваем данные у API и не можем точно определить, когда будет получен ответ.


Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии50

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность