1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/treenet-freedom

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 3.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 16:06 a291a9e

Freedom DDD Framework

License Go Report CardGoDoc GitHub release

Freedom — это фреймворк, основанный на гексагональной архитектуре, который может поддерживать богатую доменную модель.

Обзор

  • Интеграция с Iris;
  • HTTP/H2C Server & Client;
  • Интеграция с Prometheus;
  • AOP Worker & неинвазивный контекст;
  • Расширяемая инфраструктурная составляющая;
  • Внедрение зависимостей & инверсия зависимостей & принцип открытости-закрытости;
  • DDD & гексагональная архитектура;
  • Доменные события & компоненты очереди сообщений;
  • CQS & агрегатные корни;
  • CRUD & генерация PO;
  • Кэш первого уровня & кэш второго уровня & защита от проникновения.

Установка

$ go install github.com/8treenet/freedom/freedom@latest
$ freedom version

Создание проекта с помощью шаблона

$ freedom new-project [имя_проекта]
$ cd [имя_проекта]
$ go mod tidy
$ go run server/main.go

Генерация объектов модели предметной области (PO) и их методов для создания, чтения, обновления и удаления, а также для сохранения в базе данных

# freedom new-po -h для просмотра дополнительных параметров
$ cd [имя_проекта]

# Способ источника данных базы данных
$ freedom new-po --dsn "root:123123@tcp(127.0.0.1:3306)/freedom?charset=utf8"

# Способ источника данных JSON
$ freedom new-po --json ./domain/po/schema.json

Пример

Базовый учебник

HTTP/2 прослушивание и инверсия зависимостей

Компоненты транзакций, пользовательские компоненты, Kafka и компоненты доменных событий

Полный демонстрационный пример электронной коммерции, включающий CQS, агрегаты, сущности, доменные события, репозитории и инфраструктуру

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/treenet-freedom.git
git@api.gitlife.ru:oschina-mirror/treenet-freedom.git
oschina-mirror
treenet-freedom
treenet-freedom
master