NEW! Разработка Web приложений. TypeScript, Angular. — SynergyCom

NEW! Разработка Web приложений. TypeScript, Angular.

Код курса: WEB-013 Продолжительность: 5 дней (40 часов)

Курс предназначен для разработчиков пользовательского интерфейса WEB приложений. На протяжении курса строится пилотный проект с нуля, в котором создаются основные компоненты пользовательского интерфейса — деревья, таблицы, формы ввода данных., всплывающие окна, диалоги. В качестве сервера — поставщика услуг, используется WildFly сервер с уже развернутыми на нем сервисами и база данных PostgreSQL с готовой схемой данных для работы.

Разработка REST, WEB сервисов, взаимодействие с базой данных, в данном курсе не рассматриваются. 

Аудитория: разработчики предприятия, обеспечивающие взаимодействие клиентских web-приложений с уже готовыми сервисами предприятия, разработчики web-интерфейсов.

Цель: после курса разработчики смогут самостоятельно разворачивать и конфигурировать среду Angular, ориентироваться в дополнительных компонентах и библиотеках, создавать сложные пользовательские интерфейсы для отображения данных в современных Web броузерах. Разворачивать свои приложения на серверах предприятия, связывать свои WEB приложения с уже готовыми сервисами.

Начальная подготовка: ориентация в понятиях OOП, желательно знать основы HTML, JSON, XML, ES5, HTTP протокол.

Введение в инструменты Angular и среду разработки, место языку TypeScript в совеменной WEB разработке:

  • Обзор практического приложения, созданного с помощью инструмента разработки Angular/CLI — далее (NG). Целью курса является создание подобного приложения, в котором будут реализованы механизмы навигации, поиск сортировка по данным, которые будут поставляться REST сервисами, отображение данных из базы данных в отношении мастер — деталь с последующим редактированием данных в базе данных через микросервисы. Реализация механизмов безопасного доступа к сервисам из NG приложения. Генерация отчетов в формате EXCEL и отображение их на NG страницах.
  • Подготовка рабочего места для разработки приложения, установка продуктивного сервера. Инсталляция NodeJS и среды разработки WebStorm. Подготовка рабочих каталогов. Анализ REST сервисов продуктивного сервера.
  • Создание NG приложения с нуля. Утилита npm и ng. Анатомия NG приложения. Конфигурационные файлы. Подготовка приложения NG для работы в режиме разработки и продуктивном режиме. Запуск приложения в обоих вариантах — в качестве продуктивного сервера — использование сервера WildFly.
  • Два вида компиляции модулей и компонент JIT и AOT, флаг запуска —prod. Преимущества JIT компиляции на этапе разработки.
  • Модуль приложения и основной компонент приложения NG. Язык TypeScript — основа разработки NG, а всему фундамент — JavaScript.
  • Обзор среды выполнения, распределение памяти, стек вызовов, куча, механизмы обратного вызова. Механизм V8 (движок) — общее представление и механизмы времени выполнения.
  • EMACScript — однопоточный , цикл событий и параллельное выполнение.
  • TypeScript механизм строгой типизации для JavaScript, настройка рабочего места для использования TypeScript, аннотации типов, интерфейсы, необязательные свойства интерфейсов, стрелочные функции (лямбда выражения), модификатор private, pablic,  наследование. Компиляция TypeScript в JavaScript. Декораторы — как основа заключения контрактов между виртуальной машиной V8 и компонентами NG.
  • Основы OOP, инкапсуляция , полиморфизм, наследование, абстракции. Использование интерфейсов TS для типизации методов и классов, шаблоны параметров интерфейсов, методов и классов.

Angular (NG) — инструмент разработки WEB приложения:

  • Утилита ng- основной инструмент для разработчика в среде angular. Командная строка. Основные опции. Создание NG приложения с нуля. Изменение конфигурационных файлов , создание прокси для взаимодействия с сервером сервисов. Особенности среды WebStorm для работы с NG. Начало разработки — главный модуль и главный компонент приложения, таблицы стилей и другие ресурсы.
  • Создание путей навигации и связывание их с компонентами. Модуль маршрутизации. Параметры маршрута, параметры строки запроса, программная навигация, дочерние маршруты. Построение меню и определение активных маршрутов. Организация программной навигации, знакомство с событиями NG.
  • Создание компонента приложения, определение места размещения активов (assets), организация подгрузки статического контента на страницу NG.
  • Порядок использования дополнительных модулей, подгрузка зависимостей с использованием ng add. Инструментарий @angular/material — обзор. Инсталляция зависимостей через среду WebStorm, доступ, архитектура, настройка, компоненты и их использование на странице, связь через сервисы с базой данных. Компоненты, определяющие внешний вид приложений, инсталляция, настройка.
  • Создание всплывающих окон в приложении, контейнер MatDialog, конфигурация диалогового окна, передача параметров в диалог и возвращение результата действий пользователя. Общие диалоги приложения — как сервисы. Повторное использование Диалогового контейнера. Механизмы DaragAndDrop в приложении NG. Подготовка DataSources для отображения таблиц, деревьев и других компонент NG.
  • Определение сервисов. Взаимодействие из сервисов с серверами приложений, создание сервиса с параметрами и возвращением результата через Обещание (Promise). HTTPClient. Особенности выполнения методов POST и GET, обработка ошибок, использование AJAX для асинхронного обмена байтовыми потоками с серверами приложений. Механизмы Observable и Subscribe, использование Promise. Async — Await.
  • Использование результата работы сервисов в компонентах, отображение данных виде таблиц и деревьев, использование CSS стилизации для данных, полученных из сервисов, одностороннее связывание, обработка событий, двустороннее связывание, связывание через атрибуты. Взаимодействие между компонентами, передача данных из одного компонента в другой. Директивы для изменения внешнего вида приложения.
  • Формы стандартные и реактивные. Пример создания стандартной формы. Валидация формы и стилизация средствами NG. Отправка формы через сервис на сервер приложений с дальнейшей оправкой изменений в базу данных.

Дополнительные темы:

  • Организация доступа к серверу Node — Express, серверам, которые подготавливают отчетные данные для публикации их на страницах приложения NG — на примере Python сервера .
Обучение
27 мая 2024 Алматы

Направления обучения

Поиск по сайту