Необходимо, чтобы объект был хешируемым и имел корректно реализованное сравнение на равенство. В разных языках это делается через имплементацию hash и eq, Hashable, или Comparable. В случае классов — важно, чтобы их экземпляры имели неизменяемые поля, влияющие на ключ.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Anonymous Quiz
55%
Использование property observers
24%
Применение NSNotification
16%
Использование delegates
5%
Применение data binding библиотек
Anonymous Quiz
99%
Применение lazy модификатора
1%
Создание объектов в геттерах свойств
0%
Использование фабричных методов
0%
Внедрение через инъекцию зависимостей
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Forwarded from easyoffer
Ура, друзья! Изиоффер переходит в публичное бета-тестирование!
🎉 Что нового:
🟢 Анализ IT собеседований на основе 4500+ реальных интервью
🟢 Вопросы из собеседований с вероятностью встречи
🟢 Видео-примеры ответов на вопросы от Senior, Middle, Junior грейдов
🟢 Пример лучшего ответа
🟢 Задачи из собеседований
🟢 Тестовые задания
🟢 Примеры собеседований
🟢 Фильтрация всего контента по грейдам, компаниям
🟢 Тренажер подготовки к собеседованию на основе интервальных повторений и флеш карточек
🟡 Тренажер "Реальное собеседование" с сценарием вопросов из реальных собеседований (скоро)
🟢 Автоотклики на HeadHunter
🟢 Закрытое сообщество easyoffer
💎 Акция в честь открытия для первых 500 покупателей:
🚀 Скидка 50% на PRO тариф на 1 год (15000₽ → 7500₽)
🔥 Акция уже стартовала! 👉 https://easyoffer.ru/pro
🎉 Что нового:
💎 Акция в честь открытия для первых 500 покупателей:
🚀 Скидка 50% на PRO тариф на 1 год (
🔥 Акция уже стартовала! 👉 https://easyoffer.ru/pro
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
12%
protocol MyProtocol: class
61%
protocol MyProtocol: AnyObject
6%
protocol MyProtocol: NSObject
20%
protocol MyProtocol: AnyClass
Anonymous Quiz
30%
Применение разных target-конфигураций
5%
Настройка путей к файлам ресурсов
7%
Использование @testable import
- Списки, словари, множества и массивы в стандартной библиотеке не потокобезопасны, если несколько потоков одновременно читают и пишут в них.
- Это приводит к гонке данных, крашам, повреждению состояния или утечкам памяти.
- Часто это проявляется при параллельной модификации коллекций или одновременном доступе без синхронизации.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
Anonymous Quiz
10%
delegate.sendEvent
41%
UIControl.sendAction
10%
EventHandler.invoke
Anonymous Quiz
9%
sort()
9%
map()
80%
filter()
1%
reduce()
Escaping closure — это замыкание, которое используется после выхода из функции, в которую его передали.
Например, если замыкание сохраняется в свойстве или передаётся асинхронно. Его нужно отметить
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Anonymous Quiz
33%
CustomStringConvertible
8%
CustomDebugStringConvertible
7%
TextOutputStreamable
53%
StringRepresentable
Anonymous Quiz
38%
Использование Any
15%
Применение обобщенных функций
12%
Возврат Tuple
35%
Использование enums с ассоциированными значениями
Можно использовать:
- DispatchQueue с .sync или .barrier;
- NSLock, NSRecursiveLock;
- DispatchSemaphore;
- OperationQueue + dependencies;
-
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
17%
map
25%
forEach
25%
parallelMap
34%
concurrentPerform
🔥1
Anonymous Quiz
1%
Способ скрытия данных
98%
Способ создания нового класса на основе существующего
1%
Способ обеспечения безопасности потоков
0%
Способ управления памятью
Возможно, имелось в виду CAS — Compare-And-Swap — атомарная операция, используемая в многопоточности. CASD в таком виде не является распространённым термином, нужно уточнение контекста.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊6🤔3
Anonymous Quiz
4%
!
49%
?
47%
??
0%
->
🔥2
Anonymous Quiz
52%
Использование метки с break
8%
Применение exit()
32%
Использование return в функции
8%
Применение continue с меткой
Это механизм анимации в SwiftUI, позволяющий плавно анимировать переходы между представлениями, сохраняя визуальную взаимосвязь между элементами, которые логически одинаковые, но физически находятся в разных частях UI.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2