Python мануфактураJavaDesign Patterns для автоматизаторів

Python мануфактура · Сесії: AMA та PMP · 3:30–6:30

Entity, DAO, repository та ORM

Entity object відображає таблицю або persistence-модель, DAO інкапсулює низькорівневий доступ до даних, а repository формулює операції мовою домену, наприклад `findUserByEmail`. Межі цих назв різняться між ecosystem, тому важливіше розуміти відповідальність, а не механічно відтворювати всі шари. ORM перетворює об'єкти на relational data та генерує SQL. Він зменшує кількість ручних queries для стандартного CRUD, але не скасовує знання schema, indexes, transactions і joins. Для невеликого test-support helper достатньо вже наявного driver/repository; окремий ORM-шар лише для тестів часто створює дублювання production model.

Автомтизація баз даних та що з тим робити та що знати →

Python мануфактура · Сесії: AMA та PMP · 2:40–7:25

Шари від таблиці до API response

На спрощеній схемі є database table із полями користувача, entity для роботи з нею, service із бізнес-логікою та mapping, controller з endpoints і DTO, яке повертається клієнту. Response не обов’язково є прямою копією одного рядка: service може звертатися до іншої таблиці або зовнішньої системи, наприклад по `taxId` чи додаткові атрибути. Поля на кшталт `createdAt`, `updatedAt` і `deletedAt` можуть зберігатися в базі, але не віддаватися назовні безпосередньо. DTO формує публічний контракт, а service відповідає за перетворення внутрішніх даних у цей контракт.

Міграція бази даних і тестування даних →
Запитати в чаті про «entity» →