Собираю на Angular быстрые и предсказуемые одностраничные приложения и берусь как за новые продукты, так и за проекты, которые давно пора привести в порядок. Работаю аккуратно: продумываю структуру компонентов и модулей, отделяю отображение от логики и держу код типизированным, чтобы через полгода в нём разбирался не только я. Реактивную часть строю на RxJS так, чтобы потоки данных читались явно, без скрытых подписок и утечек, а когда домен действительно большой — подключаю NgRx и делаю единый предсказуемый стор вместо переменных, разбросанных по компонентам.
Закрываю весь фронтовый стек Angular: формы с валидацией, маршрутизацию с ленивой загрузкой модулей и защитой роутов, перехватчики запросов, работу с бэкенд-API. Отдельно занимаюсь скоростью — смотрю на размеры сборки, включаю OnPush, добавляю trackBy в длинные списки и режу лишнее, чтобы страница открывалась мгновенно. Тесты пишу сразу: юнит и компонентные проверки страхуют от поломок, когда проект начнёт активно меняться. Сделаю личный кабинет, панель управления, витрину или внутренний корпоративный инструмент, а также вытащу из тупика код, который стал неуправляемым. Работаю по согласованным этапам и сдаю документированный, аккуратно организованный проект, который спокойно подхватит другая команда.
— Компоненты, модули и переиспользуемые интерфейсы
— RxJS и состояние на NgRx
— Формы, роутинг, гарды и перехватчики
— Тесты, ускорение и понятная сдача проекта
Закрываю весь фронтовый стек Angular: формы с валидацией, маршрутизацию с ленивой загрузкой модулей и защитой роутов, перехватчики запросов, работу с бэкенд-API. Отдельно занимаюсь скоростью — смотрю на размеры сборки, включаю OnPush, добавляю trackBy в длинные списки и режу лишнее, чтобы страница открывалась мгновенно. Тесты пишу сразу: юнит и компонентные проверки страхуют от поломок, когда проект начнёт активно меняться. Сделаю личный кабинет, панель управления, витрину или внутренний корпоративный инструмент, а также вытащу из тупика код, который стал неуправляемым. Работаю по согласованным этапам и сдаю документированный, аккуратно организованный проект, который спокойно подхватит другая команда.
— Компоненты, модули и переиспользуемые интерфейсы
— RxJS и состояние на NgRx
— Формы, роутинг, гарды и перехватчики
— Тесты, ускорение и понятная сдача проекта