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

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

Promises заменяют колбеки для упрощения асинхронного программирования, но могут использовать их внутри, например, для обработки результата выполнения. Promise предоставляет методы .then и .catch для обработки успешных или неудачных операций. Прямое использование колбеков внутри Promise применяется реже из-за удобства работы с Promise. Современные подходы часто заменяют их на async/await.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔1
🤔 Какой компонент в Xcode предоставляет графическую обратную связь о производительности приложения на Swift?
Anonymous Quiz
51%
Memory Graph Debugger
25%
Time Profiler
15%
Visual Memory Debugger
8%
Performance Gauge
🤔 Какие стратегии используются в Swift для оптимизации скомпилированного кода с целью улучшения производительности?
Anonymous Quiz
29%
Использование optimization annotations
14%
Применение whole module optimization
26%
Использование incremental builds
31%
Применение dynamic dispatch
🤔 Как в DDD работать с зависимостями?

Зависимости в DDD управляются через Dependency Injection (DI) или фабрики. Это позволяет отделить логику предметной области от инфраструктуры. Реализации интерфейсов связываются на уровне инфраструктурного слоя. Это обеспечивает гибкость и тестируемость системы.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Как в Swift определить, что функция может бросить ошибку, но не должна обрабатывать её самостоятельно?
Anonymous Quiz
63%
Использование throws
18%
Применение rethrows
5%
Использование throwing
14%
Применение try
🤔 Как в Swift реализовать защиту данных с использованием шифрования на уровне строк кода?
Anonymous Quiz
12%
Использование Secure Enclave
36%
Использование CryptoKit
7%
Применение Data Protection API
Forwarded from easyoffer
💡 В EasyOffer 2.0 появится фильтрация вопросов по грейдам и типам интервью!

📊 Например, вот вероятности ТОП-30 вопросов, которые задают на HR-скрининге Python-разработчику уровня Middle/Senior. Данные основаны на 53 реальных интервью.

97% Какие у тебя зарплатные ожидания
73% Какие у тебя есть вопросы
44% Какие критерии при выборе будущей работы
41% Расскажи о себе
38% Почему ищешь работу
35% Расскажи про свой опыт
35% Расскажи про проект на предыдущей работе
32% Почему уволился с предыдущей работы
29% Где территориально сейчас живешь/находишься
23% Есть ли другие предложения по работе
17% Есть ли военный билет
17% Почему хочешь сменить работу
17% Как проводишь свободное время
17% Расскажи про задачи на предыдущей работе
17% Сколько коммерческого опыта работы с Python
17% С какими БД работал
14% Находишься ли в активном поиске работы
14% С каким стеком работаешь
14% Почему решил откликнуться на нашу вакансию
14% Какой текущий статус поиска работы
11% Почему решил стать программистом
11% С какими фреймворками работал
11% Какую зарплату получал на предыдущей работе
11% Работаешь ли в настоящий момент
11% На какой грейд себя оцениваешь
11% Как быстро можешь приступить к работе после получения офера
11% Расскажи про свои pet-проекты
8% Какие знаешь типы данных в Python
8% Что такое декоратор в Python
8% Что ищешь на новой работе

🚀 Скоро стартует краудфандинговая кампания, которая поможет ускорить разработку EasyOffer 2.0.
Первые спонсоры получат уникальные лимитированные награды!

📢 Если вам это интересно, подписывайтесь на канал 👉 этот телеграм канал
🤔 Чем отличается set от dictionary?

Set хранит уникальные элементы без порядка, а Dictionary — пары ключ-значение, где ключи уникальны. Set быстрее для операций проверки принадлежности и поиска. Dictionary удобен для поиска по ключу и хранения дополнительных данных для каждого ключа.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🤔 Как обрабатывать изменения в настройках приложения в реальном времени на iOS?
Anonymous Quiz
14%
Использование UserDefaults
17%
Применение KVO для UserDefaults
59%
Использование NotificationCenter для отслеживания изменений
10%
Применение Settings Bundle
🤔 Как интерфейс связывается с конкретной реализацией?

Интерфейс связывается с реализацией через Dependency Injection, где зависимости передаются через конструктор, метод или поле. Для этого используются DI-контейнеры или Service Locator. Это позволяет использовать интерфейсы для абстрагирования деталей реализации. Реализация выбирается на этапе исполнения.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift создать свои кастомные события для управления состоянием в приложении?
Anonymous Quiz
14%
Использование EventKit
52%
Применение NotificationCenter
14%
Использование кастомного enum и delegate
20%
Применение паттерна Observer
🤔 Как в Swift обеспечить потокобезопасное чтение и запись данных?
Anonymous Quiz
7%
Использование synchronized
49%
Применение DispatchQueue с барьерами
38%
Использование NSLock
6%
Применение Atomic
😁2💊2
🤔 Как протоколы реализуют код?

Протоколы в iOS задают интерфейс, который может быть реализован классами, структурами или перечислениями. Они не содержат реализацию, но можно использовать протоколы с расширениями (protocol extension), чтобы добавить стандартное поведение. Протоколы обеспечивают гибкость и модульность. Это позволяет разделять ответственность и переиспользовать код.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift реализовать автоматическое тестирование пользовательского интерфейса?
Anonymous Quiz
47%
Использование XCTest
5%
Применение Selenium
27%
Использование UI Testing Bundle
21%
Применение Snapshot Tests
🤔 Как обеспечить, что свойства объекта Swift нельзя будет изменить после инициализации?
Anonymous Quiz
66%
Объявление всех свойств как let
5%
Использование immutable модификатора
13%
Применение final классов
16%
Запрет на изменение через private(set)
🤔 Какой принцип нарушает Singleton?

Singleton нарушает принцип Dependency Inversion, так как он жёстко связывает клиентский код с конкретной реализацией. Это усложняет тестирование и замену реализаций. Singleton также нарушает принцип единственной ответственности, так как он отвечает и за управление своим состоянием, и за доступ к объекту. Для решения проблемы рекомендуют использовать DI.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift можно контролировать последовательное выполнение асинхронных задач в цепочке вызовов?
Anonymous Quiz
6%
Использование Promise
43%
Применение DispatchQueue
44%
Использование async/await
7%
Применение Combine
🤔 Какой метод в Swift позволяет обрабатывать ошибки, возникающие в асинхронном коде?
Anonymous Quiz
55%
try-catch
7%
handling errors
4%
catching exceptions
34%
try await
🤔2
🤔 Где использовать структуры данных?

Структуры данных применяются везде, где необходимо хранение и обработка информации. Например, массивы используются для упорядоченных данных, множества — для уникальных элементов, а словари — для быстрых поисков по ключу. Использование зависит от требований к скорости доступа, модификации и объёму данных.

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