• Шаблоны для вашего сайта
  • Сделать сайт
  • Реклама
  • Berry CSS
  • Albireo Framework
  • Бесплатный HTML-курс
  • Telegram-канал
  • Обратная связь
MaxSite.org
О создании сайтов и не только
Создание сайтов под ключ (Украина) →
Вход
×
или зарегистрироваться
PHP/ООП
  • Паттерн Singleton в PHP
  • ООП в PHP
  • Композиция и наследование ООП в PHP
  • Шаблоны проектирования для PHP
  • Шаблон «Fluent interface» (Текучий интерфейс)
  • Шаблон проектирования Facade (Фасад)
  • Шаблон Abstract Factory (Абстрактная фабрика) на PHP
  • Шаблон Factory Method (Фабричный метод) на PHP
  • Шаблон Singleton. Трейты (trait) в PHP
  • Шаблон Multiton (Пул одиночек)
  • Шаблон Registry (Реестр)
  • Шаблон Composite (Компоновщик)
  • Шаблон Builder (Строитель)
  • Шаблон Strategy (Стратегия)
  • Шаблон проектирования Adapter (адаптер)
  • Шаблон Observer (Наблюдатель)
  • Шаблон Prototype (Прототип)
  • Шаблон Bridge (Мост)
  • Шаблон Decorator (Декоратор)
  • Шаблон Flyweight (Приспособленец)
  • Шаблон Proxy (Заместитель)
  • Шаблон «Template method» (Шаблонный метод)
  • Dependency injection (внедрение зависимости)
  • Понимание ООП на примере Паскаля
  • Dependency Injection простыми словами
Навигация
  • Шаблоны для MaxSite CMS 22
  • jQuery и JavaScript 6
  • Java и Android 5
  • PHP/ООП 25
  • SQL 17
  • Albireo Framework 11
  • Berry CSS 7
  • CSS, HTML, LESS, SASS 23
  • PHP 37
  • Тайм-менеджмент 9
  • Софт 37
  • SEO 13
  • Git. GitHub 3
  • CodeIgniter 5
  • Landing Page 3
  • Alpine.js 14
  • Фильмы 2
  • Дневник 55

Здесь можно заказать создание сайта (только Украина), шаблона или лендинга. Также вы можете выбрать готовые шаблоны для MaxSite CMS по небольшой цене. Также можно купить отдельные модули, компоненты для вашего сайта.

Шаблон проектирования Facade (Фасад)

PHP/ООППросмотров: 5708Комментарии: 023 июня 2019 г.
ООП

Наверное это самый простой паттерн, который используется повсеместно. Задача фасада — скрыть сложную реализацию внутри какого-то класса. То есть если есть 10 классов, у которых нужно выполнить кучу методов, то мы просто делаем один класс-фасад, который их и выполняет. У нас же останется только один «пусковой» метод.

Здесь я не буду приводить код, а сразу дам ссылку на Github. Вы можете сохранить файл или скопировать код и запустить его на своём сервере (PHP 7).

Фасад применяется очень часто, поэтому разобраться с ним не составит труда.

Есть роутинг, где задается выполняемый класс/метод для определенного URL-адреса. То есть команду new будет выполнять роутинг. Дальше фасад уже сам будет решать какие именно классы подключать и что делать. В случае с концепцией MVC (web-вариант), фасад вообще выполняет роль контролёра. Упрощенно так:

class Controller  // (это и есть фасад — его «запускает» роутер)
{
   ...
   function __construct()
   {
	  $this->model = new Model(); // подключаем один класс
	  $this->view = new View(); // другой
   }
 
   function run()
   {
	  $this->model->getData();
	  $this->view->render();
   }
}

Создание сайтов (Украина) →
Шаблон Abstract Factory (Абстрактная фабрика) на PHP
Шаблон «Fluent interface» (Текучий интерфейс)
twitter.com facebook.com
Другие записи сайта
Релиз MF 9 (октябрь 2020)
Релиз MF 9 (октябрь 2020)
Обучающий курс «Уроки по созданию сайта с нуля»
Обучающий курс «Уроки по созданию сайта с нуля»
Как выключать Windows?
Как выключать Windows?
Что нам стоит сайт построить?
Что нам стоит сайт построить?
Библиотека для анимации Anime.js
Библиотека для анимации Anime.js
MaxSite CMS исполнилось три года!
MaxSite CMS исполнилось три года!
Оставьте комментарий!

Комментарий будет опубликован после проверки. Вы соглашаетесь с правилами сайта.

(обязательно)

MaxSite.org
Как создать свой сайт

Услуги по созданию сайтов, блогов, лендингов
Обратная связь • Реклама на сайте
Карта сайта
Мои проекты
  • Шаблоны для вашего сайта
  • Заказать создание сайта
  • MaxSite CMS
  • Berry CSS (CSS Utilities)
  • Albireo Framework
  • UniCSS (Universal Atomic CSS)
  • Landing Page Framework
  • Бесплатные НТML-курсы
Ссылки
  • Telegram-канал
  • Github
  • Twitter
  • Telegram-бот
  • RSS
© MaxSite.org, 2006-2022. Работает на MaxSite CMS | Время: 0.2685 | SQL: 25 | Память: 4.59MB | Вход