Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Что такое attr_reader, attr_writer, attr_accessor и зачем они?
attr_reader создает геттер, attr_writer — сеттер, а attr_accessor — оба метода. Они позволяют упрощенно создавать методы для работы с переменными экземпляра.
Для чего используются BeanPostProcessor и BeanFactoryPostProcessor?
BeanPostProcessor - модификация созданных бинов
BeanFactoryPostProcessor - модификация конфигурации до создания бинов
Используются для расширения функциональности Spring.
Что такое Associated Type в протоколах?
Associated Type (ассоциированный тип) — это заполнитель для конкретного типа, который протокол не определяет заранее. Тип указывается при принятии протокола классом или структурой. Это позволяет создавать гибкие протоколы, которые могут работать с разными типами данных, не привязываясь к одному.
Какие проблемы могут возникнуть при использовании рекурсивного enum с associated values в Swift?
Рекурсивный enum может привести к проблемам с определением размера типа на этапе компиляции. Без специальных указаний компилятор не понимает, сколько памяти нужно выделить под значение. Также могут возникать сложности с производительностью и переполнением стека при глубокой рекурсии. Для решения таких проблем используется ключевое слово indirect. Оно разрывает прямую рекурсию по памяти и позволяет корректно описать структуру.
В чём разница между raw value и associated value у enum?
Raw value — это фиксированное значение, связанное с каждым case enum. Associated value — это данные, которые передаются вместе с конкретным case при создании значения. Raw value одинаков для всех экземпляров одного case, а associated value может быть разным. Raw value используется для простого отображения или сериализации. Associated value позволяет хранить контекстные данные.
Можно ли использовать raw value и associated value одновременно?
В каком порядке браузер строит DOM и CSSOM?
В какой момент браузер получает HTML и как формируются DOM и CSSOM?
Рейтинг:
4
Сложность:
5
Нет, enum в Swift не может одновременно иметь raw value и associated value. Это ограничение языка. Enum либо используется как простое перечисление с raw value, либо как перечисление состояний с associated value. Такое разделение упрощает модель данных и работу компилятора. При необходимости эти подходы можно комбинировать косвенно.
Рейтинг:
4
Сложность:
7
DOM строится по мере парсинга HTML — потоково, сверху вниз. CSSOM строится после загрузки и парсинга CSS-файлов, которые браузер находит в HTML. Эти процессы могут идти параллельно: DOM продолжает строиться, пока качается CSS. Но для создания Render Tree и первой корректной отрисовки обычно нужен уже готовый CSSOM, поэтому стили считаются блокирующими рендер.
Рейтинг:
5
Сложность:
6
HTML браузер получает после выполнения HTTP-запроса к серверу. Сразу после получения он начинает парсинг документа. В процессе парсинга формируется DOM-дерево. Параллельно браузер загружает CSS и строит CSSOM. Эти структуры используются для дальнейшего рендеринга страницы.
Рейтинг:
3
Сложность:
5
Рейтинг:
1
Сложность:
7
Рейтинг:
2
Сложность:
8
Рейтинг:
4
Сложность:
7
Рейтинг:
5
Сложность:
6