LazyLoad Developers
1.63K subscribers
174 photos
132 videos
4 files
529 links
Курсы по мобильной разработке from zero to hero.
По вопросам сотрудничества обращаться к @Jonfir
Сайт - https://lazyload.academy
Правила - https://lazyload.academy/code-of-conduct/
Cсылки на мои другие чаты и каналы https://lazyload.academy/we-in-social/
Download Telegram
Привет! На связи Podlodka iOS Crew. 📱

🔺Хочешь создавать уникальные и высокотехнологические интерфейсы, на которые равняются другие?

Тогда приходи на новый сезон конференции 15 апреля. Ведь в этот раз мы решили досконально разобраться в хардкорном UI. Дадим знания, которыми владеют единицы.

Разберём аспекты, которые станут вызовом даже для скилловых iOS-разработчиков. Редкие техники и инструменты, сложные кейсы и инновационные подходы — всё, чтобы создавать действительно выдающийся UI!

💜 Искусство layout`a и анимации текста. Подробно разберём каждое па этого танца с драконами в мире iOS UI.
💜 Лучшие практики и тонкости работы с анимациями на Metal в iOS-разработке. Стань железным человеком с точки зрения UI.
💜 AR-cooking. Раскроем рецепты от моделирования до управления 3D-пиццей.
💜Перфоманс интерфейса. Окунёмся в редкие инструменты, секреты аналитики и решения распространённых проблем. Только для самых искушенных разработчиков!

©️ Внимание! ©️
Переход по ссылке и покупка билета изменят твой перфоманс навсегда: https://podlodka.io/ioscrew
Please open Telegram to view this post
VIEW IN TELEGRAM
Новый выпуск вышел в открытый доступ

Разберемся как определяется цвет, из чего он состоит, как его правильно перенести из figma
Новый выпуск для подписчиков на Boosty

В прошлой главе мы разобрались со стандартными ранлупами RunLoop и CFRunLoop. Мы упоминали, что они так или иначе работают с различными источниками событий. В этой главе мы поговорим о том, что это за источники, какие они бывают, зачем нужны и как создавать свои источники.
Яндекс продолжает набор в Школу мобильной разработки!

Школа мобильной разработки – это 3 месяца прокачки профессиональных скиллов, по Android, iOS и Flutter разработке для начинающих и более опытных разработчиков.

Сперва — онлайн-лекции от экспертов Яндекса. Затем — практика в офисах в Москве, Санкт-Петербурге или Екатеринбурге, где плечом к плечу с другими участниками, разработчиками и менеджерами Яндекса вы будете решать настоящие задачи.

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

Чтобы попасть в школу, подайте заявку и сделайте тестовое. Прием заявок открыт до 21 апреля включительно. Сами занятия начнутся в начале лета.

Читайте подробнее и подавайте заявки на странице Школы.
Уже через 30 минут присоединяйтесь к открытой сессии с Михаилом Рубановым (Dodo). Разберемся:
- какие типичные ошибки реализации доступности встречаются в популярных сервисах;
- как можно спроектировать прототип интерфейса, который подойдет для незрячих людей, и преобразовать его в код.
Новый выпуск вышел в открытый доступ

Разберёмся, какие виды изображений бывают, как их добавлять в проект, как показывать на экране.
Новый выпуск для подписчиков на Boosty

В прошлых главах мы разбирались с тем как работают потоки (Thread), различные примитивы синхронизации (mutext, semaphore, lock, etc) и runloop. В этой поговорим про GCD.
Новый выпуск для подписчиков на Boosty

В этой главе мы рассмотрим использование GCD, на примерах. Разберем какие инструменты для синхронизации в ней существуют и как заменить с помощью GCD семафоры и мьютексы.
Новый выпуск вышел в открытый доступ

Наконец на практике применим полученные ранее знания и сверстаем целый экран.
Новый выпуск для подписчиков на Boosty

Для завершения темы GCD следует рассказать еще и о таймерах, которые работают с помощью ранлупа, а помощью планировщика очередей - DispatchSourceTimer. Этот таймер немного отличается от обычного Timer, но в целом предоставляет те же возможности.
Новый выпуск для подписчиков на Boosty

После разбора операций, время перейти к еще одну фреймворку, не столь популярному, но все же иногда полезному - OperationOperation возник позже GCD и по сути своей представляет всю ту же работу с очередями, но только в ООП стиле. В итоге он занял лидирующие позиции и уже наверное никогда не займет. Тем не менее периодически он используется, его можно встретить и лучше иметь представление как он работает.
Новый выпуск для подписчиков на Boosty

Наконец мы подошли к последней технологии работы с асинхронностью и многопоточностью - swift concurrency. Это самая свежая, удобная и одновременно забагованная и неизвестная из всех доступных нам технологий. Мы будем разбираться с ней в течении нескольких глав и пройдем путь, от рассмотрения простого синтаксиса, до полного понимания, что происходит у нее внутри.
Новый выпуск для подписчиков на Boosty

После обзора на swift concurrency пора разобраться как работают Task и async/await, как правильно запускать задачи параллельно или асинхронно.
Новый выпуск вышел в открытый доступ

Наконец на практике применим полученные ранее знания и сверстаем целый экран.
Новый выпуск для подписчиков на Boosty

Еденицей паралельной работы являются задачи - Task. Как мы видели в прошлой главе мы можем запускать задачи из обычного кода, либо внутри других задач, для паралельного выполнения кода. Сегодня мы поговорим о том, что задачи выстраиваются в иерархию. Давайте разбираться что это такое и зачем оно нужно.
Новый выпуск для подписчиков на Boosty

Мы уже упоминали акторы (Actors), использовали MainActor для выполнения задач на главном потоке, в этой главе мы полноценно разберемся, что такое акторы, как их использовать и создавать.
Новый выпуск для подписчиков на Boosty

Мы почти разобрали все инструменты которые предоставляет Swift Concurrency. Осталось разобрать два последних AsyncSequence и Continuation. В этой главе мы будем разбирать AsyncSequence.
Новый выпуск вышел в открытый доступ

Итак, после практики в предыдущей главе у нас появилась объёмная вёрстка. Мы написали много кода, и разбираться в нём стало сложно. Для решения этой проблемы мы разделим его на небольшие UI-элементы.
Новый выпуск для подписчиков на Boosty

Последний инструмент Swift Concurrency который нам осталось рассмотреть это Continuation. Он предназначен для связи Swift Concurrency и традиционного многопоточного кода.
Новый выпуск для подписчиков на Boosty

Пришло время поговорить о том как синхронизировать данные и перенаправлять между разными потоками.
Так, я записал все темы про многопоточку которые хотел и даже те что не хотел.

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