Anonymous Quiz
11%
Использование глобальной переменной
12%
Использование структуры
39%
Использование DispatchQueue
38%
Использование класса с приватным конструктором
Anonymous Quiz
11%
Когда нет циклов сильных ссылок
10%
Для временных и мимолетных зависимостей
72%
Когда объект всегда будет существовать
7%
Когда используется во вложенных замыканиях
Нарушение инкапсуляции — это когда внутренние данные или поведение становятся доступны и изменяемы снаружи, хотя не должны. Это приводит к тому, что другие части кода начинают зависеть от внутренней реализации, что затрудняет модификацию и повышает риск ошибок.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Anonymous Quiz
1%
Значение будет изменено
10%
Программа выбросит исключение
3%
Значение останется прежним
87%
Будет выброшена ошибка компиляции
Anonymous Quiz
27%
Использование @optional
29%
Применение расширений (extensions) с пустыми реализациями
9%
Определение всех методов протокола как optional
34%
Использование @objc
Обычно нет. Значимые типы (value types) хранятся в стеке, но могут быть помещены в кучу, если встроены в reference type или захвачены замыканием. Reference types всегда хранятся в куче.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔4💊2
Anonymous Quiz
66%
Time Profiler
3%
Network Link Conditioner
23%
Memory Graph Debugger
7%
Console
Forwarded from easyoffer
📅 Осталось 7 дней до конца краудфандинга
Мы на финишной прямой!
Если ты планировал присоединиться, но ещё не успел, сейчас идеальный момент.
Вознаграждения за поддержку:
🚀 PRO подписка к easyoffer 2.0 на 1 год по цене месячной подписки. Активировать подписку можно в любой момент, например, когда начнешь искать работу.
➕ Приглашение на закрытое бета-тестирование
👉 Поддержать easyoffer 2.0
Не откладывай на последний момент
📌 Если не получается оплатить через карту РФ — напишите мне @kivaiko, и мы найдём удобный способ
Мы на финишной прямой!
Если ты планировал присоединиться, но ещё не успел, сейчас идеальный момент.
Вознаграждения за поддержку:
🚀 PRO подписка к easyoffer 2.0 на 1 год по цене месячной подписки. Активировать подписку можно в любой момент, например, когда начнешь искать работу.
➕ Приглашение на закрытое бета-тестирование
👉 Поддержать easyoffer 2.0
Не откладывай на последний момент
📌 Если не получается оплатить через карту РФ — напишите мне @kivaiko, и мы найдём удобный способ
DispatchWorkItem — это обёртка над блоком кода, который можно отправить в очередь, отменить, приостановить или использовать с notify. Это удобно для управления задачами и их завершениями.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1🤔1
Anonymous Quiz
14%
Ограничение использования в дженериках
45%
Возможность определения типов данных в реализующих типах
35%
Необходимость определения конкретных типов данных при реализации
7%
Отсутствие возможности использования в качестве типов данных
💊3
Anonymous Quiz
8%
Уменьшение размера исполняемого файла
72%
Ленивая загрузка ресурсов
10%
Статическая инициализация
9%
Автоматическая инлайн-подстановка функций
Используй инициализаторы (init в Swift, constructor в Kotlin/Java). Они автоматически вызываются при создании объекта и позволяют выполнить нужные действия.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
72%
Color
23%
UIColor
3%
NSColor
2%
RGB
Anonymous Quiz
16%
Thread.sanitize
17%
DispatchQueue.debug
40%
Xcode’s Thread Sanitizer
28%
Memory Graph Debugger
REST (Representational State Transfer) — это архитектурный стиль, основанный на взаимодействии клиента и сервера через HTTP. Основные принципы:
- Клиент-серверная модель — чёткое разделение фронтенда и бэкенда.
- Статус ресурса через URL — всё доступно через уникальные адреса.
- Методы HTTP — используются для управления ресурсами (GET, POST, PUT, DELETE и т.д.).
- Без сохранения состояния — каждый запрос содержит всю необходимую информацию.
- Кеширование — серверные ответы можно кешировать.
REST удобен, масштабируем и хорошо ложится на веб-приложения.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
55%
structName()
3%
new structName()
41%
struct structName()
1%
create structName()
👍3🤔3💊3
Anonymous Quiz
47%
Использование нескольких блоков catch после одного блока try
27%
Одиночный блок catch с внутренней логикой разветвления
11%
Применение нескольких блоков try перед каждым catch
15%
Разделение функции на несколько маленьких с разными блоками catch
Forwarded from easyoffer
Офигеть, вот это поддержка! 🔥
Скажу честно: когда я планировал запуск краудфандинговой кампании, в голове были разные варианты развития событий. Думал — ну, наверное, получится собрать 300 тысяч. В самом идеальном сценарии — может быть, миллион.
Но больше всего я боялся, что запущу кампанию, и не получится собрать даже 300 т. Это был бы провал. Так много усилий, времени и денег вложено в проект… и если бы всё закончилось ничем — это бы сильно демотивировало.
Но, ребята, мы превысили изначальную цель в 10 раз —
3 031 040 рублей! 🤯
Вся эта кампания — это одна большая проверка бизнес-модели на прочность. И я супер рад, что запустил всё публично. Люди видят, что EasyOffer реально нужен. Теперь нет сомнений — проект актуален, он будет прибыльным и будет развиваться.
Мне приходит огромное количество сообщений в личку: кто-то когда-то давно пользовался сайтом, он помог с трудоустройством, и сейчас они уже не ищут работу — но всё равно поддержали.
Это прям очень круто и трогательно.
Никак не могу отделаться от мысли, что easyoffer — это ведь мой первый сайт. Учебный, пет-проект, просто для портфолио. И вот что из него вышло. Просто офигеть.
Я не зря ушёл с работы, чтобы заниматься только им.
Я поверил в этот проект — и сейчас вижу, что вы тоже в него верите. Для меня это очень многое значит.
Огромное спасибо за вашу поддержку! ❤️
Скажу честно: когда я планировал запуск краудфандинговой кампании, в голове были разные варианты развития событий. Думал — ну, наверное, получится собрать 300 тысяч. В самом идеальном сценарии — может быть, миллион.
Но больше всего я боялся, что запущу кампанию, и не получится собрать даже 300 т. Это был бы провал. Так много усилий, времени и денег вложено в проект… и если бы всё закончилось ничем — это бы сильно демотивировало.
Но, ребята, мы превысили изначальную цель в 10 раз —
3 031 040 рублей! 🤯
Вся эта кампания — это одна большая проверка бизнес-модели на прочность. И я супер рад, что запустил всё публично. Люди видят, что EasyOffer реально нужен. Теперь нет сомнений — проект актуален, он будет прибыльным и будет развиваться.
Мне приходит огромное количество сообщений в личку: кто-то когда-то давно пользовался сайтом, он помог с трудоустройством, и сейчас они уже не ищут работу — но всё равно поддержали.
Это прям очень круто и трогательно.
Никак не могу отделаться от мысли, что easyoffer — это ведь мой первый сайт. Учебный, пет-проект, просто для портфолио. И вот что из него вышло. Просто офигеть.
Я не зря ушёл с работы, чтобы заниматься только им.
Я поверил в этот проект — и сейчас вижу, что вы тоже в него верите. Для меня это очень многое значит.
Огромное спасибо за вашу поддержку! ❤️
🔥1
Для максимального контроля используют POSIX-потоки (pthread), OperationQueue с кастомной реализацией или GCD с DispatchWorkItem и приоритетами. Также можно использовать NSLock, semaphore и dispatch group.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
50%
Combine
6%
ReactiveSwift
31%
AsyncSwift
13%
RxSwift