Знаете о шаблонах проектирования в JS?

внешний интерфейс GitHub Шаблоны проектирования JavaScript
Знаете о шаблонах проектирования в JS?

Дополнительные статьи см.: GitHub.com/elevenbeans…

предисловие

Эту серию можно рассматривать как мою личную доработку содержания книги Эдди Османи «Изучение шаблонов проектирования JavaScript», аналогично чтению заметок, целью которой является понимание соответствующих концепций, характеристик, классификации и их фактического использования в Javascript.

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

  1. Обзор (эта статья)
  2. Творчество
  3. структурный
  4. Шаблоны поведенческого проектирования
  5. MV*

основная концепция

Шаблон проектирования — это многократно используемое решение, которое можно использовать для решения проблем при проектировании программного обеспечения.

Главная особенность

  • Это косвенное решение проблемы без очевидного решения (особенность самого языка или API, предоставляемого его средой выполнения).
  • Может решать практические проблемы, может быть повторно использован
  • Это было проверено многими сторонами, и описание соответствует фактическому эффекту.
  • Может быть абстрагирован как описание отношений, выразительное

некоторые классические категории шаблонов проектирования

1. Создание шаблонов проектирования

  • Режим конструктора
  • Заводской (заводской) режим
  • Абстрактный режим
  • Режим прототипа (прототипа)
  • Одноэлементный шаблон
  • Режим строителя

2. Шаблоны структурного проектирования

  • Шаблон декоратора
  • Фасадный режим
  • Режим наилегчайшего веса
  • Режим адаптера
  • Прокси-режим

3. Шаблоны поведенческого дизайна

  • Режим итератора
  • Режим посредника
  • Режим наблюдателя
  • Режим посетителя

Некоторые примеры антишаблонов в JavaScript

  • Большое количество глобальных переменных, загрязнение глобального пространства имен
  • дляsetTimeout()``setInterval()передача строки, бросаетeval()использование
  • Измените прототип собственного объекта Object.
  • Inline JavaScript
  • злоупотреблятьdocument.write

Оставайтесь с нами, пожалуйста, поставьте звезду и смотритеThis github repo, Спасибо :)