Наши участники активно проходят собеседования, и мы стараемся записывать видео для их дальнейшего разбора.
Для вас мы решили делать транскрибацию видео и формировать вопросы с этих собеседований, чтобы вы могли понять, что сейчас спрашивают, и проверить себя — смогли бы вы ответить на эти вопросы?
Пишите свои ответы в комментариях, но не забудьте добавить блюр текста 😊
Замыкания и управление памятью
1. Про замыкание: Представим, что есть ViewController. Есть замыкание. Мы закрыли ViewController, на него вообще нет сильных ссылок. Но память не очистилась. Почему?
Типы ссылок
2. Какие знаешь типы ссылок?
Области памяти
3. Какие ты знаешь области памяти?
4. Когда у нас происходит выделение памяти на стэке?
5. Может ли быть такое, что у нас референс тип будет храниться в стэке?
6. Как у нас происходит выделение памяти в куче?
7. Куча общая для всех потоков?
Глобальные переменные и память устройства
8. Где обычно хранятся глобальные переменные?
9. Представим, что у нас есть iPhone, на нем запущено приложение и на устройстве закончилась память. Что может произойти?
Утечки памяти
10. Как ты обычно ищешь утечки памяти? Перечисли способы.
GCD и многопоточность
11. GCD - как он устроен? Что это такое?
12. Что такое очередь?
13. Представим, что мы отправляем 10 задач в конкурентную очередь. Есть ли у нас гарантии, что будет выполняться больше 1 задачи?
14. Можно ли в конкурентной очереди сделать последовательное выполнение задач?
15. Как устроен барьер?
16. Возможна ли асинхронность без многопоточности? Приведи пример.
Core Data и side effects
17. Какие возможны сайд эффекты при работе с Core Data?
