IEnumerable и IQueryable: отложенное выполнение IEnumerable предназначен для последовательного перебора коллекций, находящихся в памяти IQueryable используется для формирования и выполнения запросов к удалённым…
Безопасность типов в TypeScript any полностью отключает контроль типов unknown нельзя использовать без предварительной проверки С типом any любые операции выполняются без ошибок типизации Для unknown нужны явное…
В чём разница между Read Committed и Repeatable Read? уровни изоляции в СУБД (ACID) Read Committed: транзакция получает только зафиксированные данные защищает от грязных чтений допускает неповторяющиеся чтения…
включает в JS режим строгого выполнения запрещает неявные ошибки, включая обращение к необъявленным переменным не допускает повторяющиеся имена параметров функций изменяет значение this внутри функций: в strict это…
Для чего нужны транзакции? база данных, целостность объединение нескольких операций в единое целое атомарность: либо выполняются все операции, либо ни одна изоляция: исключает конфликты между параллельными операциями…
Как Flexbox работает с осями и чем он лучше float? Flexbox — гибкий контейнер для выравнивания и распределения элементов В нём выделяют две оси: main axis (по умолчанию горизонтальная) и cross axis (перпендикулярная…
физическое выполнение SQL JOIN Nested Loops Join: вложенный перебор строк и проверка всех возможных пар подходит для небольших таблиц и случаев с доступными индексами Hash Join: формирование хеш-таблицы меньшей…
Транзакция представляет собой последовательность операций, выполняемую как единое целое Атомарность (ACID) означает: либо выполняются все операции, либо не выполняется ни одна При возникновении ошибок используются…
Подходы к оптимизации SQL-запросов Индексы: их создают для колонок, участвующих в частых фильтрах и JOIN, чтобы сократить число полных сканирований таблиц Минимизация JOIN: отказ от ненужных соединений,…
Выбор коллекции и алгоритмическая сложность Тип коллекции определяется требованиями к операциям: добавлению, удалению, поиску и перебору Сравниваю временную сложность основных операций: например, поиск занимает O(1) у…
Как выполнить глубокое копирование объекта без JSON и StructuredClone? рекурсивно обходим и копируем все свойства исходного объекта различаем типы данных: объекты, массивы, даты и функции создаём отдельные экземпляры…