Swift | Тесты
1.21K subscribers
25 photos
341 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+wtkjBoN6OI5hNGEy
Задачи t.me/+JQkI4zSOEXtkYzg6
Вакансии t.me/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Какие есть типы данных?

Поддерживает следующие основные типы данных:
1. Простые: Int, Double, Float, Bool, String, Character.
2. Коллекции: Array, Dictionary, Set.
3. Структуры и перечисления: Struct, Enum.
4. Объекты: Class, Optional, Closure.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift определить, что два ссылочных типа указывают на один и тот же объект?
Anonymous Quiz
18%
Использование ==
58%
Использование ===
19%
Использование isEqual
5%
Использование same
2
🤔 Как в Swift обеспечить отложенную инициализацию свойства класса?
Anonymous Quiz
87%
Использование lazy
9%
Использование defer
5%
Использование late
0%
Использование delay
🤔 Где хранятся типы данных?

1. Value types (например, struct, enum) хранятся в стеке.
2. Reference types (например, class) хранятся в куче (heap).
3. Примитивные данные (например, Int, Double) обычно хранятся в стеке для оптимизации.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой компонент Swift отвечает за управление памятью для ссылочных типов?
Anonymous Quiz
2%
Deinitializer
92%
ARC (Automatic Reference Counting)
2%
Garbage Collector
4%
Reference Manager
🤔 Как в Swift определить, что экземпляр класса не будет больше использоваться?
Anonymous Quiz
71%
deinit
17%
finalize
3%
destroy
9%
release
🤔 Кто обрабатывает тач и как и куда он проходит?

1. Система получает событие тача через сенсорный экран и передаёт его в UIKit.
2. UIKit определяет целевой объект (UIView) на основе его координат.
3. Событие передаётся в методы touchesBegan, touchesMoved, touchesEnded или touchesCancelled.
4. Если объект не обрабатывает событие, оно передаётся следующему объекту в цепочке обработки событий (responder chain).


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift создать кастомный инфиксный оператор с определенным приоритетом?
Anonymous Quiz
46%
infix operator *+: MultiplicationPrecedence
22%
custom operator *+: HighPriority
13%
define operator *+: LevelHigh
18%
operator *+: CustomPrecedence
🤯5
🤔 Какие ключевые слова Swift обеспечивают автоматическую обработку исключений при вызове функций?
Anonymous Quiz
88%
throws, try
2%
fault, catch
7%
error, handle
3%
exception, test
🤔 В чем разница между Garbage Collector и ARC?

1. Garbage Collector (GC):
• Автоматически освобождает память от объектов, на которые нет ссылок.
• Работает асинхронно, что может вызывать паузы ("stop-the-world") в программе.
2. ARC (Automatic Reference Counting):
• Управляет памятью синхронно, подсчитывая ссылки на объекты.
• Когда счётчик ссылок объекта достигает нуля, память освобождается сразу.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift указать, что замыкание может захватывать список захваченных переменных только для чтения?
Anonymous Quiz
20%
[unowned]
39%
[weak]
4%
[strong]
38%
[capture]
🤔 Какие из следующих ключевых слов Swift используются для управления памятью при работе с замыканиями?
Anonymous Quiz
3%
defer, await
14%
weak, strong
81%
weak, unowned
2%
strong, static
🤔 Что такое MemoryLayout и как посчитать размер протокола?

1. MemoryLayout предоставляет информацию о типах данных: размер (size), выравнивание (alignment) и смещение (stride).
2. Размер протокола:
• Если протокол не содержит методов, его размер вычисляется напрямую через MemoryLayout<Protocol>.size.
• Если в протоколе есть методы, его реальный размер зависит от реализации.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
🤔 Какой метод в Swift позволяет выполнить код с задержкой, не блокируя текущий поток?
Anonymous Quiz
86%
DispatchQueue.asyncAfter
7%
Timer.scheduledTimer
5%
Thread.sleep(forTimeInterval:)
🤔 Что такое автоматический подсчет ссылок?

Это механизм управления памятью, который автоматически освобождает объекты, когда на них больше нет ссылок.
1. Счётчик ссылок увеличивается при создании ссылки и уменьшается при её удалении.
2. Когда счётчик достигает нуля, память освобождается.
3. ARC предотвращает утечки памяти, но требует избегать циклических ссылок с помощью weak и unowned.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Как в Swift создать класс, который невозможно наследовать?
Anonymous Quiz
4%
Использование sealed class
88%
Использование final class
3%
Использование closed class
5%
Использование static class
🤔 Зачем нужны свойства "Content Hugging Priority"?

1. Свойства управляют тем, как сильно элемент интерфейса сопротивляется увеличению своего размера.
2. Высокий приоритет указывает, что элемент предпочитает оставаться минимального размера, основываясь на содержимом.
3. Используется для разрешения конфликтов автолейаута, чтобы определять, какой элемент должен изменяться.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift обработать исключения, выброшенные из асинхронной функции?
Anonymous Quiz
39%
Использование catch блока
36%
Использование try await
3%
Использование handleError
21%
Использование async catch