3.4 - fpmi-hci-2024/project14-1965823945 GitHub Wiki

Основные компоненты системы

Система включает в себя следующие основные компоненты:

  • Веб-приложение: Пользовательский интерфейс для взаимодействия с читателями и авторами.
  • Сервер приложений: Обрабатывает бизнес-логику и запросы от веб-приложения.
  • База данных: Хранит информацию о пользователях, статьях, тегах и категориях.
  • Внешний API: Позволяет взаимодействовать с социальными сетями для обмена статьями.
код puml
@startuml
actor reader as "Читатель"
actor author as "Автор"
actor admin as "Администратор"

rectangle "Система блога" {
    rectangle web_app as "Веб-приложение\n(Django)" {
        note right of web_app : Пользовательский интерфейс
    }
    rectangle app_server as "Сервер приложений\n(Python)" {
        note right of app_server : Обработка бизнес-логики
    }
    rectangle database as "База данных\n(MySQL/PostgreSQL)" {
        note right of database : Хранение данных
    }
    rectangle external_api as "Внешний API\n(REST)" {
        note right of external_api : Взаимодействие с социальными сетями
    }
}

reader --> web_app : "Просмотр статей"
author --> web_app : "Создание статей"
admin --> web_app : "Управление системой"
web_app --> app_server : "Отправка запросов"
app_server --> database : "Запросы и хранение данных"
app_server --> external_api : "Поделиться статьей"
@enduml

替代文本

Контейнерная диаграмма

Контейнерная диаграмма показывает, как различные контейнеры системы взаимодействуют друг с другом.

код puml
@startuml
rectangle "Система блога" {
    rectangle user_management as "Компонент управления пользователями"
    rectangle article_management as "Компонент управления статьями"
    rectangle tag_category_management as "Компонент управления тегами и категориями"
    rectangle search_filter as "Компонент поиска и фильтрации"
    rectangle social_sharing as "Компонент социального обмена"
}

user_management --> article_management : "Управляет"
article_management --> tag_category_management : "Использует"
search_filter --> article_management : "Фильтрует"
social_sharing --> article_management : "Делится"
@enduml

替代文本

⚠️ **GitHub.com Fallback** ⚠️