iOS Broadcast
3.32K subscribers
1.71K photos
85 videos
977 links
Подборка новостей и статей для iOS разработчиков.

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @ab_manager
Download Telegram
Легковесный типобезопасный макрос для работы с сетью в Swift

SwiftRequest абстрагирует бойлерплейт, который обычно связан с настройкой HTTP-запросов в Swift. Он использует макросы, которые можно связать с конкретными объявлениями для улучшения и расширения их функциональности. Очень напоминает Retrofit на андроид

Макросы в Swift это новое дыхание для языка, главное чтобы это не превратилось в молоток, взяв в руки который все становится гвоздями. Как относитесь к подобным неявным упрощениям в коде? 👍/👎
👍22👎3
⚠️ Изменения в конструкторе URL из строки в iOS 17
Если зайти в документацию URL конструктора с аргументом в виде строки, там появилась секция:

⚠️Важно! Начиная с iOS 17 поведение метода будет соответствовать RFC 3986.

Понятно что важно, но что это значит на практике? На самом деле, все проще чем кажется! Новое значение по умолчанию заключается в том, что URL(string:) пытается закодировать недопустимые символы. Если мы хотим продолжать использовать поведение, существовавшее до iOS 17, нам нужно будет заменить URL(string:) на новый URL(string:encodingInvalidCharacters:) и передать false во второй аргумент. На примере все становится понятно 🙂
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12👎1
🌳Как сделать так, чтобы ваше приложение выглядело, будто вы наняли дизайнера (🇺🇸17 мин)
Хочу поделиться с вами находкой, которую вчера мне подарила предложка 🌃youtube. Это именно то, чего не хватает каждый раз, когда пытаешься сделать свой 🗑 пет проект
✔️ Как подобрать цвета и использовать их так, чтобы приложение выглядело консистентным
✔️ Как делать дизайн интуитивным
✔️ Как списывать как художник используя HIG
✔️ Как не перегружать интерфейс
✔️ Почему важно оставлять свободное место в интерфейсе
✔️ Секретная форма скруглений

И все это используя 🖥Xcode
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25👎1
📱 Регистрация на TraitChanges (🇺🇸3 мин.)
Apple прекратила поддержку метода «traitCollectionDidChange» в iOS 17, заменив его регистрацией на определенные изменения свойств «registerForTraitChanges». В статье на примерах рассматривается как это теперь работает
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👎2
Forwarded from Android Broadcast (Кирилл Розов)
GitHub больше не основывается на Git, а начинает фокусироваться на Copliot технологиях (заявление тут). Это не значит что функционал с репами уйдёт, просто меняется приоритет компании, что уже можно было наблюдать весь год. GitHub Copilot Chat станет доступен всем в декабре 2023 и будет доступен на сайте и мобильных приложениях. Конечно подписку придется оформлять!

Что еще интересного в анонсе:
👉 Представили GitHub Copilot Enterprise - Copilot, который персонализируется под бизнес (39$ за пользователя в месяц)
👉 Безопасность GitHub тоже прокачали с AI (подробности тут)
👉 GitHub Copilot в рамках партнерской программы начнет интеграцию с другими сервисами для расширения знаний ассиcтента

#github #copilot #tooling
👎12👍5
🐚Создайте инструмент командной строки
Выходные - идеальное время для пет проекта. И если вы давно мечтали облегчить свою жизнь при помощи CLI утилиты, в блоге Swift появился туториал:
Как создать проект на основе 🖥SPM
Как сделать красивый вывод в 🐚консоль
Как парсить аргументы комманд

🖥Example проект с рассматриваемым проектом CLI
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9👎3
📺Offline-first дизайн мобильных приложений

Еще один доклад с Swift Connection 2023 которым захотелось поделиться после просмотра. Как сделать мобильное приложение доступным без интернета, если сеть ему нужна. Детально рассматриваются проблемы, с которыми сталкиваются разработчики подобных приложений и способы их решений.
👉 Отличие кеша от персистентного реляционного хранилища
👉 Сохранение консистентности состояния приложения
👉 Способы мержить конфликты незаметно для пользователя
👉 CRDT - Бесконфликтные реплицированные типы данных

Очень хорошо разложил по полочкам как сложно сделать работающее в фоне приложение и почему вам это скорее всего не нужно, с чем я абсолютно согласен 🙂
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12👎1
🔥Упрощение отладки SwiftUI в Xcode 15.1: что вызвало перерисовку? (🇷🇺 5 мин)
Очень полезное нововведение в Xcode 15.1, позволяющее удобно отловить лишнее место перерисовки SwiftUI View. Статья показалась мне на столько полезной, что сделал перевод. Уделите 6 минут, будет полезно!
👉 Что такое обновляемый SwiftUI экран
👉 Проблема Массивных SwiftUI View
👉 Использование LLDB для отладки изменений
👉 Использование _logChanges в Xcode 15.1
👉 Решаем проблемы с перерисовкой в SwiftUI
👉 Отладка изменений с помощью кода. Что такое @self и @identity
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15👎1
Forwarded from AvitoTech
Делимся материалами с Avito iOS meetup #10 🕊️

📺 Async / Await. Лучшие практики, советы и особенности
Максим Сурков (МТС) — рассмотрит structured concurrency в Swift, поговорит о async/await, actors, tasks и проведёт аналогии с уже существующими инструментами для работы с многопоточностью

📺 SwiftUI — уже пора?
Тимур Долотказин (Авито) расскажет про свой опыт перехода на новый (старый) фреймворк, подводные камни и выводы, к которым он пришёл.

📺 Гармония статики и динамики: погружаемся в mergeable libraries
Александр Сычев (Тинькофф Страхование) о новом решении Apple – mergeable libraries, он рассмотрит их внутреннее устройство и разберёт, как можно интегрировать их в свои iOS-проекты.

Ссылка на наш плейлист.
Фотографии с мероприятия лежат в альбоме Вконтакте 🔵

#iOS_avitotech #avitoiOSmeetup
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👎1
🖥Атрибут @_marker в Swift

В исходниках макросов обнаружил атрибут @_marker который, как оказалось, служит для тех случаев, когда код имеет значение для Compile-time safety, проверки типов, но не несет пользы в runtime. Этот Атрибут, по мнению Apple, используется в Sendable 😀.
Он может пригодиться и нам, для тех случаев когда протокол используется только в определенной конфигурации
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👎1
🔥 BIGO Ads появилась в мобильной медиации Яндекса

Глобальная рекламная сеть стала 13-й среди доступных при подключении мобильной медиации Яндекса или в рамках Простой монетизации. 

Если в вашем приложении есть реклама, явно нужно добавить ее в список для аукциона, это даст прирост стоимости показа за счет конкуренции среди рекламодателей.

Поддерживаются стандартные баннеры, полноэкранная реклама и Rewarded Ads (те самые бонусные жизни за просмотр рекламы). Особенный прирост даст, если вашим приложением будут пользоваться на Ближнем Востоке, в России и в странах Южной и Юго-Восточной Азии.

Подключить BIGO Ads вы можете уже сейчас или отдать настройку экспертам Простой монетизации. А вам останется получить оплату одним платежом.

#ads #яндекс
👎2