О курсе

Курс посвящён применению принципов чистой архитектуры при разработке приложений на языке Go. В рамках интенсива рассматриваются преимущества такого подхода, включая удобство тестирования, независимость от фреймворков, баз данных и пользовательского интерфейса. Участники знакомятся с формированием структуры проекта и папок, внедрением зависимостей (Dependency Injection), подключением PostgreSQL и Jaeger, использованием контекста и трассировки, а также покрытием тестами Use Case слоя.

Практические занятия разделены на три дня. В первый день создаётся структура проекта, наполняется DI и подключается PostgreSQL. Второй день посвящён закреплению материала, созданию структур папок, конструкторов слоёв и инициализации на main. Третий день включает изучение Observability, контекста и трассировки, а также завершение работы над сервисом по работе с контактами и их группировкой.

Курс ориентирован на разработчиков, которые хотят систематизировать знания о чистой архитектуре и применить их на практике в Go.

Что рассматривается в программе

  • рассматривается формирование структуры проекта по принципам чистой архитектуры
  • разбирается внедрение зависимостей (Dependency Injection)
  • изучается подключение PostgreSQL через DI
  • рассматривается создание конструкторов для слоёв и установка зависимостей
  • разбирается инициализация слоёв на main
  • изучается наполнение слоёв (Domain, Use Case, Delivery, Repository)
  • рассматривается использование контекста и трассировки
  • изучается подключение Jaeger через DI и логирование ошибок

Кому может быть полезен курс

  • тем, кто не знаком с чистой архитектурой и хочет понять, как формировать структуру папок по этой технологии
  • разработчикам, переходящим на Go с других языков и желающим быстрее освоить особенности языка
  • программистам на Go, не имеющим опыта работы над крупными проектами
  • тем, кто хочет научиться создавать сложные приложения на Go с нуля

Вопросы о программе

Какие темы рассматриваются в первый день интенсива?

В первый день разбирается структура проекта на Golang, примеры использования чистой архитектуры, а также на практике создаётся структура проекта, наполняется Dependency Injection и подключается PostgreSQL через DI.

Что делают участники во второй день?

Во второй день закрепляется материал предыдущего дня, изучается формирование структур папок по чистой архитектуре. Практика включает создание структур папок, конструкторов для слоёв, установку зависимостей, инициализацию слоёв на main и наполнение слоёв (Domain, Use Case, Delivery, Repository).

Какие инструменты используются в курсе?

В курсе рассматриваются PostgreSQL для работы с базой данных, Jaeger для трассировки, а также контекст (context) для управления запросами. Также упоминается покрытие тестами Use Case.

Какое итоговое приложение создаётся в рамках интенсива?

В рамках интенсива создаётся сервис по работе с контактами и возможностью их группировки. В третий день добавляются использование контекста, логирование ошибок, подключение Jaeger через DI, трассировка и тесты для Use Case.