Можно ли анимировать свойства opacity, visibility и display? CSS-анимации применимы к свойствам с числовыми значениями opacity — поддерживает плавное изменение, например от 0 до 1 visibility — напрямую не анимируется,…
Java использует иерархию классов Исключения составляют примитивы и исключения JVM; например, примитивные типы классами не являются Когда класс явно не указывает родительский класс, он неявно наследует Object…
Нужно ли учитывать различия между структурой и классом при передаче больших данных? Контекст: языки, поддерживающие типы struct и class, например C# и Swift Структуры — value type: при передаче копируются, поэтому…
В статическом массиве вставка выполняется за O(n), поскольку элементы приходится копировать В динамическом массиве, например ArrayList, добавление в конец имеет амортизированную сложность O(1) Вставка в середину…
Почему ::before/::after работают эффективнее, чем 10 000 DOM-узлов? Псевдоэлементы CSS (::before/::after) формируют виртуальное содержимое, не добавляя в документ реальные DOM-узлы DOM-дерево не увеличивается, поэтому…
Почему BulkInsert работает быстрее обычных вставок? добавляет большие объёмы данных с минимальными накладными расходами игнорирует либо откладывает проверку констрейнтов, включая внешние ключи и индексы сокращает…
Роль CPU Cache в архитектуре ECS ECS (Entity Component System) представляет собой архитектурный паттерн, применяемый в играх и высокопроизводительных приложениях CPU Cache — это небольшой, но очень быстрый участок…
Почему колоночные БД, включая ClickHouse, эффективнее PostgreSQL В отличие от PostgreSQL, данные хранятся в колоночном формате, а не построчно Такая архитектура оптимальна для аналитических запросов, включая агрегацию…
Зачем Go runtime использует “work stealing” и как устроена эта модель? concurrency model Go (Goroutine scheduler) сокращение простоя CPU за счёт динамической балансировки нагрузки каждый P (processor) располагает…
Высокоуровневая абстракция над потоками с удобным объектным API Поддержка приоритетов и настройка зависимостей между задачами Возможность отменять и приостанавливать операции Поддержка наблюдателей и KVO для контроля…
Почему []rune эффективнее прямой конкатенации строк? строки в Go неизменяемы при конкатенации создаются новые копии строк — это требует много памяти []rune представляет собой изменяемый массив символов (runes)…