Skip to content

Android-Developer-Basic/Multimodule-Architecture

Repository files navigation

Архитектура приложения и многомодульное приложение

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

  • Создание аккаунта пользователя
  • Регистрация профиля
  • Показ профиля

Проектная документация находится в каталоге doc. Для просмотра диаграм в Android Studio удобно воспользоваться плагином PlantUML.

Документация:

  • RegisterUsecase - диаграмма юзкейсов, показывающая действия пользователя в системе.
  • RegisterObject - диаграмма объектов приложения и их связей
  • Modules - диаграмма связи модулей

Этот проект не содержит сервер - обмен с сервером эмулируется. Однако, в папке с документацией лежат:

  • [api.yaml] - описание API сервера в формате OpenAPI
  • [openapitools.json] - конфигурация кодогенератора для создания серверного и клиентского модулей.

Подробнее о кодо-генерации читайте на сайте openapi-generator-cli

Модули приложения

Приложение состоит из нескольких модулей, которые разделены по функциональности и ответственности.

  • core - содержит общие для приложения классы, интерфейсы и абстракции, которые могут использоваться другими модулями.
  • domain - содержит бизнес-логику приложения, интерфейсы и абстракции, которые могут использоваться другими модулями.
  • domaintest - содержит тестовые данные для бизнес-логики, которые могут использоваться другими модулями.
  • domainmockdata - содержит мок-реализацию хранения доменных данных. Используется вместо сетевого и дискового хранения.
  • appcore - содержит общие компоненты для всех Android-модулей.
  • account - модули, отвечающие за создание аккаунта пользователя при помощи разных "социальных сетей".
  • registration - модуль, отвечающий за регистрацию профиля пользователя.

About

Демо-приложение для занятия "Архитектура многомодульных приложений"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages