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

Вопросы собесов t.iss.one/+wtkjBoN6OI5hNGEy
Задачи t.iss.one/+JQkI4zSOEXtkYzg6
Вакансии t.iss.one/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Каким простым способом можно реализовать абстракцию в проекте?

Один из самых простых и гибких способов реализовать абстракцию — это использование протоколов (protocols).
Протоколы определяют набор требований (свойств, методов), не реализуя их, и позволяют легко заменять конкретные реализации в коде. Это даёт возможность:
- Заменять реализацию (например, для тестирования).
- Разделять ответственность.
- Поддерживать слабую связность компонентов.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
🤔 Какое ключевое слово используется для создания свойства или метода, доступного только внутри расширения?
Anonymous Quiz
13%
fileprivate
40%
private
17%
internal
31%
extension
💊11
🤔 Как в Swift реализовать систему плагинов, где каждый плагин может быть загружен и вызван динамически?
Anonymous Quiz
47%
Использование dynamic libraries
24%
Применение паттерна factory
19%
Разработка с protocols и extensions
10%
Создание структур с замыканиями
🤔 Что означают IBOutlet и IBAction, для чего они нужны, и что значат для препроцессора?

- IBOutlet – указывает, что свойство связано с элементом интерфейса (Storyboard/XIB).
- IBAction – указывает, что метод вызывается при взаимодействии пользователя (например, нажатие кнопки).
Оба являются атрибутами (
@property в Objective-C, аннотациями в Swift), но игнорируются препроцессором и служат только для связи с Interface Builder.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой метод в Swift позволяет оптимизировать доступ к элементам в массиве?
Anonymous Quiz
39%
map()
32%
forEach()
12%
filter()
18%
sorted()
💊9
🤔 Что такое priority inversion?

Priority inversion — это ситуация, когда низкоприоритетный поток блокирует ресурс, необходимый высокоприоритетному потоку, и тот вынужден ждать. Это нарушает принцип приоритетов и может тормозить важные задачи.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Какая конструкция позволяет выполнить код минимум один раз независимо от условия?
Anonymous Quiz
17%
for
17%
while
19%
repeat-while
46%
do-while
💊6👍1
🤔 Как реализовать composition full layout?

В SwiftUI или Jetpack Compose composition full layout означает создание интерфейса из переиспользуемых, независимых компонентов. Он строится через композицию небольших вью или функций, каждая из которых отвечает за отдельную часть интерфейса, что повышает читаемость и тестируемость.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой атрибут в Swift определяет, что протокол может быть принят только классами?
Anonymous Quiz
7%
class-only
71%
AnyObject
9%
class
12%
typeclass
🤔 Как в Swift создать свойство, которое вычисляется при каждом доступе к нему?
Anonymous Quiz
31%
Использование lazy
49%
Определение computed property
15%
Использование didSet
5%
Использование willSet
👍1
🤔 Что относится к типам данных?

Это формат представления информации в памяти компьютера.
Примеры:
- Простые типы: Int, Float, Char, Boolean.
- Структурные: Array, Tuple, Struct, Class.
- Ссылочные: Object, Pointer, Reference.
- Пользовательские: Enum, Union.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какое значение возвращает выражение let result = 5 > 3?
Anonymous Quiz
82%
true
5%
false
8%
nil
4%
1
💊4
🤔 Когда используется runloop?

RunLoop используется для поддержки непрерывного ожидания и обработки событий в потоке. Он нужен, когда поток не должен завершаться, а должен обрабатывать входящие события, таймеры, сигналы или сообщения, особенно в UI и фоновых задачах.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой метод используется для объединения двух строк в одну?
Anonymous Quiz
26%
append()
46%
join()
21%
concatenate()
8%
add()
👍1
🤔 Чему равен результат использования reduce на массиве [1, 2, 3, 4] с начальным значением 0 и операцией сложения?
Anonymous Quiz
83%
10
5%
9
7%
0
5%
4
🔥1
🤔 Как исправить мельтешение картинок по ячейкам?

Проблема возникает из-за переиспользования ячеек и асинхронной загрузки изображений. Нужно:
- Сбрасывать содержимое ячейки перед повторным использованием.
- Проверять, соответствует ли картинка текущей ячейке после загрузки.
- Использовать кэш изображений.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какое значение будет у переменной типа String, если она была объявлена, но не инициализирована?
Anonymous Quiz
49%
nil
33%
""
12%
"undefined"
7%
null