Entity Framework: вопросы на собеседовании
Вопросы и ответы по Entity Framework: подготовка, примеры и типичные ошибки.
Проверьте себя по Entity Framework: 5 вопросов, ~10 минут
Вопросов: 40. Частые идут первыми, сложные возвращаются на повторение.
- Как работает change tracking в EF Core?Senior· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое
DbContextи какова его роль в EF Core?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost - Что такое Entity Framework Core и чем он отличается от Entity Framework 6?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Когда Entity Framework ускоряет разработку, а когда ORM-абстракция начинает мешать понимать базу данных?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Как сравнить Entity Framework с raw SQL, query builder и другими ORM по контролю, типобезопасности и производительности?Junior· спрашивают почти всегда
- В чём разница между eager loading, lazy loading и explicit loading?Middle· спрашивают почти всегда
- Как работают migration в EF Core? Как создавать и применять их?Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Как предотвратить проблему N+1 запросов в Entity Framework?Senior· спрашивают почти всегда· полный разбор — Jobs/Boost
- В чём разница между
AsNoTracking()и отслеживаемыми запросами, и когда использовать каждый вариант?Middle - Как обрабатывать конфликты параллельного доступа (concurrency conflicts) в EF Core?Senior
- Что такое
DbSet<T>и как его использовать?Junior - Как понять, что проблема в приложении связана с Entity Framework, а не с индексами, схемой, isolation level или плохим SQL?Senior· полный разбор — Jobs/Boost
- Представьте, после изменения кода на Entity Framework выросло число SQL-запросов и latency. Как вы будете это доказывать и чинить?Senior· полный разбор — Jobs/Boost
- Какие ошибки делают команды, когда прячут сложность базы данных за Entity Framework?Middle
- Какая mental model Entity Framework важнее всего: unit of work, change tracking, query generation, migrations или generated client?Middle· полный разбор — Jobs/Boost
- Какие production-риски есть у Entity Framework: N+1, транзакции, lazy loading, connection pooling, migrations и raw queries?Senior· полный разбор — Jobs/Boost
- В чём разница между
Find()иFirstOrDefault()в EF Core?Middle· полный разбор — Jobs/Boost - Что такое Fluent API в EF Core и чем он отличается от data annotations?Middle
- В чём разница между
Include()иThenInclude()?Middle - Как выполнять сырые SQL-запросы в EF Core?Senior· полный разбор — Jobs/Boost
- Как оптимизировать производительность EF Core для сценариев с интенсивным чтением?Senior
- Как настраивать связи между сущностями с помощью Fluent API и data annotations?Middle· полный разбор — Jobs/Boost
- В чём разница между
SaveChanges()иSaveChangesAsync()?Middle - Как юнит-тестировать код, использующий EF Core?Middle· полный разбор — Jobs/Boost
- Как EF Core работает с транзакциями?Senior· полный разбор — Jobs/Boost
- Как выполнять seeding данных в EF Core?Middle· полный разбор — Jobs/Boost
- Когда использовать
AsNoTracking, compiled queries и split queries?Middle - Как EF Core обрабатывает optimistic concurrency через concurrency tokens?Middle· полный разбор — Jobs/Boost
- Расскажите о случае, когда Entity Framework помог или помешал вам при миграциях, транзакциях, оптимизации запросов или борьбе с N+1.Middle· полный разбор — Jobs/Boost
- Как реализовать наследование table-per-hierarchy (TPH) и table-per-type (TPT)?Senior· полный разбор — Jobs/Boost
- Как настроить связь many-to-many в EF Core 5+?Middle· полный разбор — Jobs/Boost
- В чём разница между подходами Code-First, Database-First и Model-First?Middle
- Что такое owned entity types в EF Core?Middle· полный разбор — Jobs/Boost
- Что такое shadow property в EF Core?Middle· полный разбор — Jobs/Boost
- Как реализовать soft delete в Entity Framework Core?Senior· полный разбор — Jobs/Boost
- Как использовать EF Core со stored procedure?Senior
- Что такое value converters в EF Core и как их использовать?Middle
- Что такое compiled queries в EF Core и когда их следует использовать?Senior· полный разбор — Jobs/Boost
- Что такое interceptors в EF Core и для чего они используются?Senior· полный разбор — Jobs/Boost
- Что такое паттерн repository и актуален ли он при использовании EF Core?Senior· полный разбор — Jobs/Boost