Xcode предлагает:
- Интегрированную среду разработки (IDE).
- Инструменты отладки: LLDB, Breakpoints, Debug View Hierarchy.
- Инструменты профилирования: Instruments.
- Интерфейсный редактор: Storyboard, Interface Builder.
- Симуляторы, автотесты, Git-интеграция, Code Review, Device logs.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
69%
8
18%
10
8%
13
5%
14
💊5🤔1
Anonymous Quiz
31%
Использование DispatchOnce
50%
Применение замыкания с захватом состояния
12%
Использование статической переменной в замыкании
7%
Применение once token
💊4
Barriers (dispatch_barrier) в GCD основаны на последовательной синхронизации: они позволяют блокировать доступ к ресурсу и выполнять задачу эксклюзивно, прежде чем продолжится параллельное выполнение. Семафоры (DispatchSemaphore) — это счётчики, которые регулируют количество одновременно работающих потоков или доступ к ресурсу. Оба механизма основаны на примитивах синхронизации ядра.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
18%
Реализация паттерна MVC и использование KVO
17%
Применение MVVM и связывание с помощью библиотеки Bond
62%
Использование паттерна Observer с делегатами
3%
Разработка собственной системы связывания данных
💊10
Anonymous Quiz
14%
При помощи наследования
40%
Используя extension
26%
Создавая wrapper классы
21%
При помощи динамического приведения типов
Голодание (starvation) — это ситуация, когда один поток или задача никогда не получает доступ к ресурсу, потому что другие задачи постоянно занимают его. В GCD это может происходить при приоритете .background, если нет возможности перейти на .userInitiated.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
77%
defer
19%
guard
1%
final
3%
ensure
Anonymous Quiz
20%
Atomic Operations
35%
Mutex Locks
34%
Serial Dispatch Queue
11%
Synchronous Operations
- Designated initializer — основной инициализатор класса, который инициализирует все свойства напрямую.
- Convenience initializer — вспомогательный, использует другие инициализаторы для настройки, делегирует вызов self.init().
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
56%
Использование App Groups
20%
Применение shared UserDefaults
16%
Создание общего CloudKit контейнера
8%
Использование Keychain
Anonymous Quiz
32%
Использование обфускации кода
31%
Шифрование данных на уровне приложения
23%
Применение сертификатов и SSL/TLS
14%
Защита данных с помощью системных вызовов iOS
Copy-On-Write (COW) реализован в стандартных типах Swift — Array, String, Dictionary, а также присутствует в C++ (std::string) и некоторых реализациях Java (например, CopyOnWriteArrayList). Это механизм, который откладывает копирование до момента изменения.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊1
Anonymous Quiz
43%
split(using:)
40%
components(separatedBy:)
17%
divide(separator:)
1%
tokenize(with:)
💊3
Anonymous Quiz
81%
TableView
9%
GridView
3%
ListView
6%
CollectionView
🤔3💊2
Для продолжения работы нужно:
- запросить разрешение у системы (например, для фона по геолокации, аудио, VOIP);
- использовать background task, если задача должна быть завершена после сворачивания;
- следить за временем, так как система ограничивает выполнение в фоне.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
35%
Visual Memory Debugger
23%
Time Profiler
4%
Network Link Conditioner
39%
Threads Viewer
Anonymous Quiz
44%
asyncMap
8%
mapAsync
10%
forEachAsync
38%
asyncSequence
Хотя стек обычно представлен как структура данных в оперативной памяти (RAM), он также:
- Логически часть адресного пространства потока в программе.
- Может быть реализован как аппаратный стек в CPU (для push/pop, возврата из функций).
- Может существовать в виртуальной машине (например, JVM, Swift Runtime) как абстрактный стек вызовов.
- Может быть программно эмулирован в сложных системах, где нет физического стека (например, в WebAssembly, embedded-средах).
Но с точки зрения разработчика — стек живёт в системной памяти как часть потока.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊2
Anonymous Quiz
22%
Использование Instruments
51%
Применение Memory Graph Debugger
26%
Использование ARC
2%
Применение Weak references