Привет, меня зовут Infanty, мой профиль в LinkedIn.
Я пишу how-to статьи на редкие темы или статьи обзоры - для себя и тех кто со мной работает.

Отображено: по дате публикаций. Посмотреть по дате последнего изменения.

Создадим модуль с тремя компонентами, используя Angular CLI. Данные этого модуля (и его компонентов) будут выводиться в файл основного шаблона приложения - вместо тега router-outlet, когда пользователь находится на роуте - главной страницы сайта (компонент: home-page) или главной страницы сайта с формой входа (компонент: home-page-login).

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

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

Центральный репозиторий содержит две главные ветви, существующие всё время:

  • master - главная ветвь. Весь исходный код в ней должен иметь возможность быть размещённым в проекте (на сайте) в любой произвольный момент времени.
  • develop - главная ветвь для разработки. Хранящийся в ней код в любой момент времени должен содержать самые последние изданные изменения, необходимые для следующего релиза. От данной ветви также делаются ответвления при разработке, которые должны войти в следующий релиз.

В продолжение темы быстрого разворота локального окружения, рассмотрим Vagrant и Puppet. Они позволяют быстро разворачивать виртуальные машины используя VirtualBox, избавляя от необходимости ручной настройки при ее установке.

Как и в прошлой статье про Docker, воспользуемся вспомогательным инструментом с графическим интерфейсом - PuPHPet, позволяющим создавать Puppet конфигурации для Vagrant, которые можно тут же начать использовать.

Рассмотрим как:

  • как передавать в компоненты изменяемые данные для вывода - например: имя текущего пользователя для компонента шаблонизирующего блок с информацией о пользователе или текст статьи для компонента шаблонизирующего блок центральной части страницы-статьи;
  • как добавить компоненту интерактивности (работая с его состояниями) - например: показывать или скрывать часть данных компонента по нажатию кнопки;
  • как производить обмен данными между компонентами и автоматически обновлять зависимые (от текущего компонента) компоненты;
  • как добавить в компонент логику, что бы компонент получал данные с бэкенда или стороннего сайта и далее передавал их интерактивному компоненту, а тот в свою очередь на основе этих данных - отображал нужный функциональный компонент (не имеющий состояний) с передачей ему свойств из этих данных.

Для того, что бы использовать БЭМ и стили Bootstrap совместно - необходимо что бы CSS классы приложения названные по методологии БЭМ наследовали стили CSS классов из Bootstrap.

БЭМ расшифровывается как: Блок - Элемент - Модификатор. Данная методология применяется для именования CSS классов. По данной методологии всю HTML страницу можно разбить на независимые логические блоки.

PostCSS – это модульный препроцессор, предназначенный для увеличения уровня абстракции CSS кода и упрощения файлов стилей. PostCSS немного отличается от препроцессоров Sass, Less и Stylus. Самая сильная его сторона - это наличие плагинов, которые анализируют, манипулируют, добавляют или изменяют свойства и значения в CSS коде еще до того, как конечный CSS файл будет сформирован и сохранён.

Работая с Drupal 8, в команде, можно столкнуться с тем, что у каждого разработчика локально установлен свой набор библиотек в папке: vendor с помощью Composer.

Работа автоматической проверки кода проекта будет выглядеть следующим образом: в момент пре-коммита (в Git) будет запускаться lint-staged проверка в которой eslint и prettier обработают все файлы, готовящиеся к коммиту. Если проверка не будет пройдена, то не удастся совершить коммит (в Git).

React.js можно считать наилучшей альтернативой среди средств для разработки веб-интерфейсов. Разработка на React.js заключается в описании того, что нужно вывести на страницу (это называется: декларативный подход к описанию интерфейсов). Т.е. Вам всё равно - как браузер, на программном уровне, будет выводить элементы интерфейса на страницу.