Проект для демонстрации и тестирования архитектурных решений банковского ПО с использованием Docker .NET и Vue 3.
Убедитесь, что установлены последние версии.
В проекте используются следующие технологии и инструменты:
-
Docker & Docker Compose Контейнеризация и оркестрация сервисов. Воспроизводимость окружения и простота запуска.
-
.NET / C# (Backend API)
Бэкенд реализован на C# с акцентом на чистую архитектуру, строгую типизацию и модульность. Используются:- ASP.NET Core — построение REST API.
- Entity Framework Core и Dapper — работа с базой данных, баланс между удобством ORM и производительностью.
- Dependency Injection — для модульности и тестируемости.
- Конфигурация через environment variables — для гибкой настройки в Docker.
-
PostgreSQL Реляционная база данных для хранения основной бизнес-информации. Особенности:
- Надёжность и транзакционная целостность (ACID).
- Поддержка сложных запросов и индексов.
- Данные хранятся в отдельном volume, что обеспечивает сохранность при перезапуске контейнеров.
-
Vue 3 (Frontend) Клиентская часть построена на Vue 3 с использованием Composition API. Основные практики:
- Строгая типизация (TypeScript).
- Модульная архитектура компонентов.
- Явные контракты с backend API.
- Поддержка фильтрации, пагинации и управления состоянием.
- Чистая архитектура: разделение слоёв и строгие границы между инфраструктурой и бизнес-логикой.
- Повторное использование: универсальные UI-компоненты и сервисы.
- Устойчивость: централизованная обработка ошибок, retry-политики.
- Масштабируемость: модульная структура и возможность лёгкого расширения.
- Наблюдаемость: healthchecks и логирование для диагностики.
-
Клонируйте репозиторий: git clone https://github.com/romanshal/BankSoftwareTestProject.git
cd BankSoftwareTestProject
-
Запустите сервисы: docker-compose up -d