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
🤔 Наличие контекста в эскейсе хорошо или плохо?

1. Наличие контекста может быть полезно, если нужно передать состояние или внешние зависимости.
2. Однако это может привести к утечкам памяти, особенно если контекст связан с долгоживущими объектами (например, Application Context).
3. Плохо спроектированный код с контекстами может усложнить отладку и поддержку.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift реализовать протокол, который требует от conforming types иметь определенный инициализатор?
Anonymous Quiz
32%
Использование init в протоколе
57%
Применение required init
6%
Использование construct
5%
Применение protocol init
🤔 Какой тип данных используется в Swift для безопасного выполнения асинхронных операций и управления состоянием?
Anonymous Quiz
54%
AsyncResult
18%
Future
21%
Promise
7%
Deferred
🤔 Как работают выделения?

Процесс выделения (allocation) связан с резервированием памяти для хранения объектов или данных в программе. В зависимости от типа памяти выделение может происходить в куче (heap) или стеке (stack). Куча используется для объектов с длительным сроком жизни, а стек — для временных данных, таких как локальные переменные. В языках с автоматическим управлением памятью, например, в Swift или Java, выделение и освобождение памяти обрабатываются системой.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift реализовать расширение для типа, которое добавляет новую функциональность только если этот тип реализует определенный протокол?
Anonymous Quiz
77%
Использование условных расширений с where
7%
Применение обобщенных расширений
7%
Использование динамических расширений
8%
Применение строгих расширений
🤔 Какой паттерн проектирования наиболее эффективен для управления сложными зависимостями в приложении Swift?
Anonymous Quiz
7%
Singleton
77%
Dependency Injection
9%
Factory
6%
Builder
🤔 Что такое JSD?

JSD может быть интерпретировано как JavaScript Documentation или JavaScript Description, и связано с описанием кода и API для разработчиков. Это включает документацию стандартных библиотек, описание функций, их аргументов и возвращаемых значений. JSD может использоваться для лучшего понимания кода и обеспечения единообразия. Иногда это касается спецификации, как в случае стандартов ECMAScript.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯4💊3
🤔 Как в Swift определить функцию, которая может возвращать ошибку, не выбрасывая исключение?
Anonymous Quiz
34%
Использование throws
37%
Применение Result типа
9%
Использование Error параметра
20%
Применение try блока
🤔 Как в Swift эффективно обновить каждый элемент массива без изменения оригинального массива?
Anonymous Quiz
21%
array.forEach { }
11%
array.update { }
10%
array.modify { }
Каким стеком пользоваться?

Выбор стека технологий зависит от задач. Для веб-разработки популярны MERN (MongoDB, Express, React, Node.js), MEVN (Vue вместо React) или LAMP (Linux, Apache, MySQL, PHP). Для мобильной разработки используются стеки с Kotlin, Swift или Flutter. Выбор стека должен учитывать требования проекта, язык команды и доступность инструментов.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
😁1
🤔 Как в Swift встроить проверку во время разработки, чтобы убедиться, что код не переходит в продакшн?
Anonymous Quiz
73%
Применение #debug
4%
Использование #error
5%
Применение #warning
🤔 Какой атрибут в Swift определяет, что протокол может быть принят только классами?
Anonymous Quiz
11%
class-only
69%
AnyObject
11%
class
9%
typeclass
🤔 Есть ли event emitter в колбеках?

В чистых колбеках механизма EventEmitter нет, но его можно интегрировать, например, через библиотеку Node.js. EventEmitter используется для обработки событий, позволяя подписываться на них и обрабатывать асинхронный код. Колбеки могут быть связаны с событиями через вызов функций обратного вызова. Это полезно для построения асинхронной архитектуры.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift обработать сценарий, когда последовательность асинхронных операций должна остановиться при первой ошибке?
Anonymous Quiz
28%
Использование try first
10%
Применение early exit
26%
Использование throw after
37%
Применение catch first
🤔 Как в Swift оптимизировать производительность цикла обработки большого массива данных?
Anonymous Quiz
8%
Использование for-in
36%
Применение forEach
21%
Использование parallelMap
36%
Применение map
🤔 Как отличить Domain Driven Design в приложении?

Приложения с DDD фокусируются на логике предметной области и разделении модулей по бизнес-контекстам. Выделяются сущности, агрегаты, репозитории и фабрики. Основная цель — обеспечение точного моделирования бизнес-логики, независимого от технической реализации. Это позволяет создавать масштабируемую и легко поддерживаемую архитектуру.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Какое свойство в SwiftUI используется для автоматического обновления представления при изменении данных?
Anonymous Quiz
17%
🤔 Пишут ли на колбеках 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