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

  • Шаблон проектирования модуля
  • Выявление шаблона проектирования модуля
  • Шаблон проектирования прототипа
  • Шаблон проектирования Observer
  • Шаблон проектирования Singleton

Яважно уяснить, что прежде чем переходить к шаблонам проектирования, необходимо иметь четкое представление о следующих пунктах.

– Почему нам действительно важны шаблоны проектирования?

– Какую проблему мы пытаемся решить с помощью шаблонов проектирования?

– В каком контексте следует использовать шаблоны проектирования?

Если у вас уже есть ответы на вышеуказанные вопросы, продолжайте читать

Шаблон проектирования модуля

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

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

Еще один вариант шаблона проектирования модулей – раскрывающийся шаблон проектирования.

Поскольку название предполагает, что паттерн раскрывающегося модуля использует оператор return для раскрытия общедоступных методов, мы можем вернуть литерал объекта, который «открывает» только те методы или свойства, которые мы хотим сделать общедоступными.

Преимущества модульного и раскрывающего шаблонов проектирования модулей

  • Подход к чистому коду
  • Меньше загрязнения в глобальном пространстве имен
  • Функции и локализация переменных через замыкания
  • Явно определенные общедоступные методы и переменные, которые повышают читабельность.