Сайт использует сервис веб-аналитики Яндекс Метрика с помощью технологии «cookie». Пользуясь сайтом, вы даете согласие на использование данной технологии.
Обзор слоя Контейнеров (Containers) архитектурного шаблона проектирования - Порто (Porto). * Слой Контейнера == Код высокого уровня Цели слоя Контейнера ► Отделить задачи друг от друга ► Разбить крупные задачи на более мелкие подзадачи ► Определить правила оформления бизнес-логики (Компоненты) * ►►►Что такое контейнер? Что можно выделить в отдельный контейнер? Точного определения что такое Контейнер - нет. Но мы попытаемся его выделить. Контейнер - это совокупность классов объединенных вместе для решения одной задачи и предоставляет доступ с помощью одного или более интерфейсов: Web (страница на сайте), API, CLI (командная строка). Чаще всего ядром контейнера служит Модель (или так называемые Value Object, DTO и тп) Контейнер обеспечивает реализацию задачи и предоставляет доступ с помощью одного или более интерфейсов: Web (страница на сайте), API, CLI (командная строка). Если в приложении есть сущность у которой есть свои маршруты, контроллеры, модели и тп. То можно выделить эту сущность в отдельный контейнер. * ►►► Размеры контейнера: ► Минимальный - обслуживание одной модели. ► Средний - обслуживание нескольких связанных друг с другом моделей когда использование их по отдельности не имеет смысла. ► Максимальный размер контейнера - весь проект. Например в приложении Блог, статью блога (BlogPost) можно выделить в отдельный контейнер. Рекомендуется чтобы в одном контейнере была одна модель (не обязательно). * ►►► Взаимодействия контейнеров ► Контейнер может зависеть от одного и более других контейнеров ► Контейнер может вызывать задачи (Tasks) других контейнеров ► Модель одного контейнера может иметь связь с моделью другого контейнера ► Возможны иные формы связи, например - прослушивание событий запускаемых другими контейнерами * #MahmoudZalt #porto #ddd #порто #Containers #Ship #слой_корабля #laracasts * Полезные ссылки: ► Порто (Porto): ► Апиато (Apiato): ► Автор Порто [ Mahmoud Zalt ]: ► / 1347260555069894667 ► Плейлист курса: * ★ Автор видео: Дмитрий Афанасьев. ★ Канал: * ► Выразить благодарность, поддержать донатом развитие канала. ★ ★ * ► Еще интересные курсы: ★ PHP для начинающих: ★ Видеокурс "Эксперт PHP": ★ Видеокурс по Laravel: ★ Видеокурс по Git: ★ Объяснение SOLID: ★ Шаблоны проектирования: ★★★ Все курсы →