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

Вопросы собесов t.me/+wtkjBoN6OI5hNGEy
Задачи t.me/+JQkI4zSOEXtkYzg6
Вакансии t.me/+3o9-Ytdiv_E5OGIy
Download Telegram
Forwarded from easyoffer
Я боялся, что провалю собеседование. Так появился easyoffer

Когда я только начинал искать первую работу программистом, меня пугала мысль, что я просто не смогу ответить на вопросы на собеседовании.

Типа… ты потратил месяцы на то, чтобы учиться, писал pet-проекты, собирал резюме, рассылаешь отклики — и всё может закончиться на одном-единственном вопросе, на который ты не знаешь ответ.

Я реально боялся.
Я смотрел видео mock-собеседований на YouTube, останавливал каждое, выписывал вопросы в Notion. Потом вручную писал к ним ответы. И потом ещё по нескольку раз перечитывал. Такой вот "тренажёр" на коленке.

📎 (там на картинке — один из моих реальных списков в Notion, ставь 🔥 если тоже так делал)

В какой-то момент я посчитал — у меня уже было выписано больше 500 вопросов. Я почувствовал ужас.
Потому что невозможно всё это зазубрить. А что, если спросят как раз тот, к которому я не успел подготовиться?..

Тогда и пришла идея

А что если понять, какие из вопросов встречаются чаще всего? Чтобы не учить всё подряд, а сфокусироваться на главном.

Так родился easyoffer.

Сначала — просто как пет-проект, чтобы показать в резюме и подготовиться к собесам. А потом оказалось, что он реально помогает людям. За первые месяцы его посетили сотни тысяч человек. И я понял: это больше, чем просто пет-проект.

Сейчас я делаю EasyOffer 2.0
И уже не один, а вместе с вами.

В новой версии будут:
– вопросы из реальных собесов, с фильтрацией по грейду, компании, типу интервью
– тренажёр с карточками (по принципу интервальных повторений — как в Anki)
– база задач с интервью
– тренажёр «реальное собеседование», чтобы отрепетировать как в жизни

Каждая фича упрощает и сокращает время на подготовку. Все эти штуки я бы мечтал иметь, когда сам готовился к собеседованиям.

Я делаю всё на свои деньги. Никаких инвесторов. Только вы и я.

Если вы хотите помочь — сейчас самое важное время.
Краудфандинг уже стартовал. Благодаря нему я смогу привлечь больше людей для разработки, сбору и обработки собеседований.

Все, кто поддержат проект до релиза, получат:

🚀 1 год PRO-доступа по цене месячной подписки. Его можно активировать в любое время, например когда начнете готовится к собесам.
Доступ к закрытому бета-тесту

Поддержать 👉 https://planeta.ru/campaigns/easyoffer

Спасибо, что верите в этот проект 🙌
🤔 Нужно ли ретейнить (посылать сообщение retain) делегат для CAAnimation?

Нет, делегат CAAnimation не удерживается. Он объявлен как weak, чтобы избежать retain cycle. Поэтому, если объект делегата может быть деинициализирован раньше времени, его нужно явно удерживать где-то ещё, иначе он обнулится и не получит события.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой оператор используется для приведения типа в Swift, при условии, что приведение может завершиться неудачно?
Anonymous Quiz
7%
as!
87%
as?
5%
as
2%
is?
🤔 Какой метод используется для сортировки массива in-place в Swift?
Anonymous Quiz
58%
sorted()
39%
sort()
1%
order()
2%
arrange()
🤔 Какие категории View есть?

В SwiftUI можно условно разделить View на несколько категорий:
1. Контейнеры (Layout):
- VStack, HStack, ZStack, Grid, List, Form, ScrollView.
2. Элементы интерфейса:
- Text, Image, Button, Toggle, Slider, TextField.
3. Навигация и управление:
- NavigationView, NavigationStack, TabView, Sheet, Popover.
4. Декоративные и вспомогательные:
- Spacer, Divider, Group, EmptyView.
5. Анимации и эффекты:
- LottieView, TimelineView, Canvas, GeometryReader.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🤔 Какой тип данных используется в Swift для безопасного выполнения асинхронных операций и управления состоянием?
Anonymous Quiz
64%
AsyncResult
13%
Future
19%
Promise
5%
Deferred
🤔4
🤔 Как называется технология, позволяющая приложению на Swift продолжать работу в фоновом режиме для выполнения определенных задач?
Anonymous Quiz
21%
Background Execution
13%
Background Fetch
39%
Background Mode
28%
Background Processing
🤔 Какие различия между HEAD, GET, POST, PUT?

- HEAD — как GET, но без тела. Используется, чтобы узнать метаинформацию (например, размер файла или заголовки) без загрузки содержимого.
- GET — запрашивает данные с сервера. Не изменяет состояние сервера.
- POST — отправляет данные на сервер для создания нового ресурса. Неидемпотентен.
- PUT — отправляет данные для полного обновления существующего ресурса. Идемпотентен.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊2
🤔 Какой протокол в Swift позволяет типу быть представимым в виде строки?
Anonymous Quiz
66%
StringRepresentable
17%
CustomStringConvertible
5%
Printable
13%
TextRepresentable
💊3
🤔 Как в Swift использовать ключевое слово where для уточнения контекста протоколов?
Anonymous Quiz
20%
В определении функций
10%
В определении класса
49%
В расширениях и дженериках
21%
В инструкциях if
🤔 Что такое circular dependencies?

Circular dependency (циклическая зависимость) — это ситуация, когда два объекта ссылаются друг на друга, не позволяя ARC освободить память, потому что счётчик ссылок не становится нулём.
Часто возникает с strong-ссылками в делегатах и замыканиях. Решается использованием weak или unowned.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🤔 Какой инструмент в Xcode используется для отладки параллельного кода?
Anonymous Quiz
8%
Visual Debugging
58%
Thread Sanitizer
27%
Memory Graph Debugger
7%
Performance Monitor
🤔 Перечислите все ленивые (lazy) контейнеры/вью?

В SwiftUI ленивые контейнеры загружают и создают представления только по мере необходимости:
- LazyVStack — вертикальный список с ленивой отрисовкой.
- LazyHStack — горизонтальный аналог.
- LazyVGrid — ленивый вертикальный грид.
- LazyHGrid — ленивый горизонтальный грид.
Они эффективны при работе с большим количеством данных или динамическими списками.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
🤔 Какой оператор используется для объединения двух условий в логическое И в Swift?
Anonymous Quiz
4%
and
72%
&&
6%
||
19%
&
🤔 Вопрос: Какой тип данных в Swift используется для хранения текста?
Anonymous Quiz
94%
String
4%
Text
0%
Str
3%
CharArray
🤔 Чем отличается пассивная модель от активной?

Пассивная модель — это подход, при котором объект модели не знает о существовании интерфейса (view) и не уведомляет его об изменениях. Контроллер сам запрашивает обновление данных и обновляет интерфейс вручную.
Активная модель — модель сама уведомляет представление или контроллер об изменениях, обычно через делегаты, нотификации или биндинги. Это повышает реактивность, но усложняет структуру.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как в Swift создать безопасный и эффективный механизм для изменения значения свойства из разных потоков?
Anonymous Quiz
22%
Использование Atomic классов
2%
Применение volatile переменных
38%
Использование DispatchSemaphore
38%
Обёртывание свойства с DispatchQueue