Files
otus-kotlin-developer/README.md
Александр Веденёв f0446dee20 module 3 lesson 1
2025-02-05 13:23:17 +07:00

4.8 KiB
Raw Permalink Blame History

otus-kotlin-developer

Учебный проект курса Kotlin Backend Developer. Поток курса 2024-11.

Messenger — это программное обеспечение, предназначенное для обмена информацией между пользователями.

Проблема существующих решений

Главный недостаток современных мессенджеров — необходимость использовать отдельные приложения для рабочих и личных задач.

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

Цель разработки Программное обеспечение призвано объединить корпоративное и личное общение в единой платформе.

Ключевые функции:

  • Два режима работы:

    • Быстрое переключение между рабочим и личным режимами.

    • Автоматическая сортировка контактов и чатов в зависимости от выбранного режима (например, отдельные группы для коллег и друзей).

  • Интеграция с инструментами планирования:

    • Синхронизация с общим календарём.

    • Мгновенное создание встреч через подключённые сервисы (Google Meet, Zoom и другие видеоконференц-платформы) без перехода во внешние приложения.

  • Встроенный тайм-менеджмент:

    • Напоминания о задачах и встречах.

    • Статистика времени, затраченного на рабочие/личные активности.

Визуальная схема фронтенда

Макет фронта

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

  1. Маркетинг и аналитика
    1. Целевая аудитория
    2. Заинтересанты
    3. Пользовательские истории
  2. Аналитика:
    1. Функциональные требования
    2. Нефункциональные требования
  3. DevOps
    1. Файлы сборки
  4. Архитектура
    1. Описание API
    2. Компонентная схема
  5. Тесты

Структура проекта

Подпроекты для занятий по языку Kotlin

  1. Модуль 1: Введение в Kotlin
    1. m1l1-first - Вводное занятие, создание первой программы на Kotlin
    2. m1l2-basic - Основные конструкции Kotlin
    3. m1l3-func - Функциональные элементы Kotlin
    4. m1l4-oop - Объектно-ориентированное программирование
  2. Модуль 2: Расширенные возможности Kotlin
    1. m2l1-dsl - Предметно ориентированные языки (DSL)
    2. m2l2-coroutines - Асинхронное и многопоточное программирование с корутинами
    3. m2l3-flows - Асинхронное и многопоточное программирование с Sequence и Flow
    4. m2l4-kmp - Мультиплатформенная разработка
    5. m2l5 - Интероперабельность Kotlin с другими языками
      1. m2l5-1-interop - Интероперабельность Kotlin Native с C
      2. m2l5-2-jni - Интероперабельность Kotlin JVM с C
    6. m2l6-gradle - Расширенные возможности Gradle

Проектные модули