Log in Sign up
Courses / Ecto: от нуля до продвинутого

Ecto: от нуля до продвинутого

Intermediate
ecto elixir database postgresql sql

About this course

Полный курс по Ecto — от первого запроса до продвинутых техник. Ecto это не ORM, а тандем data mapper и языка запросов: явный, композируемый, без магии. Предполагается знание Elixir (pattern matching, pipe, структуры). Ecto используется в Phoenix, но это самостоятельная библиотека и работает без него — курс это учитывает. Примеры на PostgreSQL (основная СУБД экосистемы), но большинство применимо к MySQL/SQLite.

Курс охватывает четыре столпа Ecto — Repo (доступ к БД), Schema (отображение таблиц), Changeset (валидация и преобразование данных), Query (композируемый DSL запросов) — и ведёт от основ к продвинутому: ассоциации и борьба с N+1, сложные запросы (join’ы, подзапросы, оконные функции, CTE, динамические запросы), транзакции через Ecto.Multi, embedded и schemaless changeset’ы, upsert’ы и bulk-операции, мультитенантность через prefixes, кастомные типы, а также тестирование, производительность и безопасные миграции в проде.

Для разработчика из Rails проведены параллели: Ecto ≈ ActiveRecord, но без магии и с явными changeset’ами; Repo ≈ то, что в AR размазано по моделям; миграции похожи, но полностью обратимы. Ключевое отличие от AR — Ecto разделяет данные (schema), их изменение (changeset) и доступ (Repo), а не смешивает всё в «активной записи».

Темп 1–2 часа в день. Каждый урок содержит теорию, примеры кода, чеклист заданий и квиз. Главный принцип: Ecto делает работу с БД явной — ты всегда видишь, какой SQL выполнится, какие поля принимаются из ввода и когда происходит обращение к базе.

Lessons (12)

1

Введение, Repo, миграции

Enroll to unlock lessons
2

Схемы и типы

Enroll to unlock lessons
3

Changeset: основы валидации

Enroll to unlock lessons
4

Changeset: продвинутое

Enroll to unlock lessons
5

Запросы: основы

Enroll to unlock lessons
6

Ассоциации

Enroll to unlock lessons
7

Запросы: продвинутое

Enroll to unlock lessons
8

Транзакции и Ecto.Multi

Enroll to unlock lessons
9

Embedded и schemaless changeset'ы

Enroll to unlock lessons
10

Upserts, bulk-операции, prefixes, кастомные типы

Enroll to unlock lessons
11

Тестирование, производительность, эксплуатация

Enroll to unlock lessons
12

Дальше и справочник

Enroll to unlock lessons
No ratings yet

Comments (0)

Log in to leave a comment.

No comments yet. Be the first to comment!

Share this course

Invite someone else to start learning.