Задание: Веб-программист. Разработка прототипа каркаса Web SPA-приложения с использованием фреймворка Angular (Дистанционная работа)
Необходимо разработать НЕ ФУНКЦИОНАЛЬНЫЙ (Mock) прототип web-приложения, используя фреймворк Angular 19.
Существует десктоп приложение, представляющее собой корпоративный клиент для осуществления видео-звонков. Клиент написан на с++. Используя предоставленные скриншоты приложения (или приложение можно установить себе) необходимо перенести пять экранов этого приложения на веб.
Экраны включают в себя:
- Форму авторизации
- Выбор языка приложения
- Настройку оборудования (камера, микрофон)
- Адресная книга с возможностью просмотра профиля пользователя
- Модальное окно исходящего/входящего вызова
- Окно участия в видео-звонке
Некоторые окна, дополнительно, могут содержать повторяющиеся компоненты.
Все эти окна не имеют никаких специфичных вещей, сложно реализуемых на веб-технологиях. Также, они заранее разработаны таким образом, что могут отображаться на очень маленьких экранах. Ресурсы, используемые на этих экранах (картинки) будут предоставлены.
Важным замечанием к задаче, является то, что требуется именно просто "каркас" приложения, а не рабочее приложение. Т.е. необходимо посмотрев на существующее нативное приложение (или его скриншоты) сверстать несколько экранов этого приложения, а также подготовить под эту верстку каркас на Angular. Под каркасом понимается некий набор компонентов, классов, сервисов, моделей и т.п., содержащих заглушки (Mock-и) , возвращающие некие поддельные данные, имитирующие работу приложения.
Каркас приложения должен быть разработан таким образом, чтобы в дальнейшем у квалифицированного программиста не возникло никаких сложностей реализовать уже рабочий функционал вместо заглушек, а также добавлять новый функционал используя подготовленную архитектуру приложения. Упрощение каркаса для понимания мало-опытными программистами не требуется.
Приложение должно быть разработано на Angular последней версии (19) с использованием всех современных технологий и функций добавленных во фреймворк. Архитектура приложения должна быть четкой, структурированной и понятной, и соответствовать всем принятым паттернам ООП и паттернам разработки ПО, гайд-стайлам разработки на Angular. Верстка элементов и стилей не должна быть запутанной и избыточной, и использовать все современные возможности HTML и CSS. Приложение должно требовать как можно меньше сторонних зависимостей, и использовать API предоставляемые Angular, и/или стандартной библиотекой JS. Приложение должно быть написано с использованием TypeScript версии > 5.8.0, с применением всех современных особенностей языка. Поддержка каких-либо старых браузеров или технологий не требуется.