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

Вопросы собесов t.me/+wtkjBoN6OI5hNGEy
Задачи t.me/+JQkI4zSOEXtkYzg6
Вакансии t.me/+3o9-Ytdiv_E5OGIy
Download Telegram
🤔 Как в Swift реализовать потокобезопасный ленивый инициализатор без использования lazy?
Anonymous Quiz
30%
Использование DispatchQueue
16%
Использование NSLock
17%
Использование Atomic
36%
Применение dispatch_once
1
🤔 Расскажи об отличиях MVC от MVP?

MVC (Model-View-Controller) разделяет данные, пользовательский интерфейс и логику управления, где View напрямую взаимодействует с Controller. В MVP (Model-View-Presenter) Presenter управляет всей логикой и взаимодействием, а View становится пассивной, обрабатывая только отображение данных. MVP лучше подходит для тестирования, так как логика полностью изолирована в Presenter.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как использовать замыкания в Swift для создания конфигурируемых компонентов UI без подклассов?
Anonymous Quiz
21%
Использование IBOutlet
31%
Применение configuration blocks
23%
Использование delegate
25%
Расширения с помощью extension
🤔 Как в Swift можно принудительно выполнить выход из нескольких уровней вложенных циклов?
Anonymous Quiz
57%
Использование метки с break
8%
Применение exit()
27%
Использование return в функции
9%
Применение continue с меткой
🤔Что такое cherrypick?

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

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Как в Swift запустить задержанную операцию на фоновом потоке и затем обновить UI на главном потоке?
Anonymous Quiz
73%
Использование DispatchQueue.global().async и DispatchQueue.main.async
24%
Применение asyncAfter и sync
2%
Использование OperationQueue
2%
Использование performSelector(inBackground:)
😁3
🤔 Сначала задача ставится в фоновую очередь, затем результат передается в главную очередь.
Anonymous Quiz
13%
Использование Array
15%
Применение Set
31%
Расширение Array с протоколом Equatable
41%
Создание кастомного типа с NSOrderedSet
💊6🤯3😁2
🤔 Чем отличается rebase от merge?

rebase переписывает историю, применяя изменения вашей ветки поверх целевой ветки, создавая линейную историю. merge объединяет две ветки, сохраняя историю обеих, что может привести к дополнительным коммитам при конфликте.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift обеспечить, что изменения внутри транзакции БД отменяются при возникновении ошибки?
Anonymous Quiz
18%
Использование defer и throw
63%
Применение do-catch с роллбэком в catch
14%
Использование замыканий с обработкой ошибок
5%
Применение guard для проверки каждой операции
🤔 За что отвечает "L" в "SOLID"?

"L" в SOLID — это принцип Лисков (Liskov Substitution Principle), который гласит, что объект дочернего класса должен корректно работать там, где используется объект родительского класса. Это помогает создавать устойчивые и легко расширяемые архитектуры.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Что означает принцип open closed?

Принцип открытости/закрытости (Open/Closed Principle) гласит, что классы должны быть открыты для расширения, но закрыты для модификации. Это позволяет добавлять новую функциональность без изменения существующего кода, что снижает риск внесения ошибок.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift реализовать контейнер, который динамически обрабатывает элементы на основе их типов без явного указания типа при вставке?
Anonymous Quiz
33%
Использование массива типа Any
5%
Применение паттерна Visitor с типами элементов
51%
Использование Generics с типовыми ограничениями
11%
Применение паттерна Strategy с автоматическим распознаванием типов
🤔 Расскажи про RC?

RC (Reference Counting) в Swift — это механизм управления памятью, который автоматически отслеживает количество ссылок на объекты в памяти. Когда количество ссылок на объект достигает нуля, объект освобождается, и его память становится доступной для повторного использования. ARC (Automatic Reference Counting) управляет ссылками на объекты в фоновом режиме, что позволяет избежать утечек памяти. Однако при работе с циклическими ссылками может потребоваться использовать слабые (`weak`) или необладания (`unowned`) ссылки, чтобы избежать утечек памяти.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Нужен человек, для сбора вопросов из собеседований на должность iOS разработчик.

Что надо делать:
1. Смотреть записи собеседований (список будет дан)
2. Выписывать вопросы, которые задают кандидату

Ставка: 450 руб. / час
Примерная ЗП: 54 000 руб. / месяц (4 часа в день)

Если интересно и можешь уделять работе от 4 часов / день, то отправь сообщение и сразу напиши какие языки программирования знаешь и какие лучше всего?
🤔 Как реализовать в Swift кастомный протокол для асинхронной загрузки данных с возможностью отмены?
Anonymous Quiz
30%
Использование протокола с методами start и cancel
17%
Применение Future и Promise
27%
Использование NSURLSessionDataTask
26%
Применение делегатов с методами управления состоянием
🤯1
🤔 Как в Swift гарантировать, что строковое значение соответствует определенному шаблону при компиляции?
Anonymous Quiz
51%
Использование Regex при инициализации
32%
Применение String Interpolation
6%
Использование Literal Convertibles
11%
Применение pattern matching