Что такое директива AngularJS?

Я потратил довольно много времени, читая документацию AngularJS и несколько учебных пособий, и был весьма удивлен тем, насколько недоступна документация.

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

Что такое директива AngularJS?

Где-то должно быть простое, точное определение директивы, ноСайт AngularJS предлагает эти удивительно бесполезные определения:

На главной странице:

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

вдокументация для разработчиков:

Директивы - это способ научить HTML новым трюкам. Во время компиляции DOM директивы сравниваются с HTML и выполняются. Это позволяет директивам регистрировать поведение или преобразовывать DOM.

И естьсерия переговоров о директивах, которые, как ни странно, предполагают, что аудитория уже понимает, что они есть.

Сможет ли кто-нибудь предложить для четкой ссылки точное определение того, что такое директива, которая объясняет:

Что это такоеопределение jQuery В качестве примера)Какие практические проблемы и ситуации предполагается решитьКакой шаблон проектирования он воплощает, или, альтернативно, как он вписывается в предполагаемый MVC /MVW миссия AngularJS.