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

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

В этом году многие планируют поднять таргет до iOS 16 а это значит что можно мигрировать на нативный фреймворк Swift Charts.
Главное и безоговорочное преимущество - отсутствие сторонней зависимости, что позволяет уменьшить размер приложения.
Даже если ваш таргет iOS 15, уже можно планировать работу по миграции на нативные графики и включать их для пользователей на актуальных iOS, чтобы иметь обратную связь и возможность переключаться на старые графики по-небходимости

#swift #charts #migration
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👎1
🔥 Основы оптимизации производительности SwiftUI (5 мин 🇺🇸)

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

➡️ Как работает алгоритм сравнения для перерисовки View
➡️ Как возможно влиять на алгоритм сравнения
➡️ Эффективные структуры данных для работы с View
➡️ Ускорение перерисовки и эффективные списки
➡️ Инструменты для профиллирования и дебага производительности

#swiftui #performance
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👎1
🤫 Как работает async/await под капотом (26 мин 🇺🇸)

Вы уже знаете, как использовать async/await, но знаете ли вы "как это работает"? Одна из статей которая долго висела у меня в списке для чтения и это настоящий бриллиант. Автор углубился в компилятор, чтобы ответить на свой вопрос, как работает async/await в Swift и очередной раз показал на примерах что async/await в Swift упрощает параллелизм, но не обязательно облегчает его 🤔

➡️ Предпосылки и история внедрения async/swait в Swift
➡️ Кооперативные пулы потоков
➡️ Серийный, конкурентный и кастомный исполнители
➡️ Передача контекста между исполнителями
➡️ Задачи и структурированный параллелизм
➡️ Работа с шарингом мутабельного состояния
‼️ Подвохи с неявным наследованием задач, повторным входом, потокобезопасностью акторов

Искренне советую сохранить в избранное и перечитать перед собеседованием ✍️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👎1
iOS Broadcast
🤫 Как работает async/await под капотом (26 мин 🇺🇸) Вы уже знаете, как использовать async/await, но знаете ли вы "как это работает"? Одна из статей которая долго висела у меня в списке для чтения и это настоящий бриллиант. Автор углубился в компилятор, чтобы…
📺 О дивный новый мир со Swift Concurrency (48 мин 🇷🇺)
Для тех кто предпочитает формат видео и контент на русском, по той же теме советую посмотреть разбор от коллеги

➡️ Проблемы, с которыми столкнулись, и то, как их решали
➡️ Лучшие практики, разработанные при написании кода со Swift Concurrency
➡️ Как акторная модель, может изменить написание кода фичи
➡️ Почему за Swift Concurrency будущее.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👎3
🎉 Создаваем красивую документацию с помощью Swift-DocC

Внезапный инсайт с WWDC23, Apple доработала Swift-DocC так, что это теперь полноценный code-first редактор сайтов для инженеров, гораздо удобнее папок с .md файлами

➡️ Live preview документации
➡️ Шаблоны документации с темами и табличная верстка ‼️
➡️ Группировка по темам документации всего фреймворка
➡️ Возможность документировать расширения
➡️ Навигация в вебе как в Xcode

Вот теперь думаю, переводить всю документацию на новые релльсы или начать с новой 🤔
#Swift #DocC #wwdc23
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11👎1
📹 В iOS 17 появился новый режим доступности - Assistive Access

Важное нововведение, которое поможет людям, которые до этого использовали кнопочные телефоны. Да, 👵бабушки и 👨‍🦳 дедушки у многих предпочитают кнопочные телефоны но их сложно найти и они совсем не просты в использовании.
Вспомогательный доступ можно поддержать в своем приложении и это важно сделать для тех приложений, которыми пользуются все: банки, мессенджеры, карты. Основые концепции:
➡️ Огромные шрифты
➡️ Огромные иконки
➡️ Упрощенное выполнение задач
➡️ Предотвращение ошибок и восстановление
➡️ Консистентность

Если вы готовы адаптировать ваше приложение - добавьте ключ UISupportsFullScreenInAssistiveAccess в Info.plist
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👎1
Используем Swift интороп для создания нативных 💻Windows приложений

Свежая статья в блоге swift с дерзким заголовком о будущем Swift для Windows экосистемы.
На словах все невероятно интересно, Rust курит в сторонке, ведь тут мы имеем дело с проверенными временем C и C++ библиотеками , которые уже написаны и оптимизированы. А для удобства их использования предлагается писать поверх Swift обертки... И мне интересно ваше мнение, вы верите в будущее кроссплатформы на Swift? В особенности для нативных Windows приложений?

P.S. Если читать заголовок то можно увидеть что автор является не только частью Swift Core команды но и инженером The Browser Company, которая разрабатывает браузер ARC, написанный полностью на Swift (поверх Chromium) с использованием TCA архитектуры. И это, пожалуй, единственный кейс где требуется нативное Windows приложение и код портируется со Swift
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19👎1
🛡 Встречайте, PassKeys!
Начнем неделю с разбора PassKeys. Технология которую согласовали🍎Apple и🖥Google совместно с FIDO альянсом еще в прошлом году, но до пользователей оно только начало добираться.
🗣️ Как же это работает?
🗣️ Асимметричная криптография!

➡️ Клиент (например, iPhone) при регистрации создает пару приватного и публичного ключей 🔑🗝
➡️ Приватный 🔑ключ остается на устройстве, а на сервер отправляется 🗝публичный ключ
➡️ При аутентификации сервер шифрует 🗝 публичным ключом случайную строку (challenge), расшифровать он ее не может, но знает что зашифровывал
➡️ Клиент, используя свой приватный🔑ключ расшифровывает строку и отправляет ее серверу
➡️ Сервер сверяет строку которую прислал клиент с той строкой которая у него была и идентифицирует пользователя
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12👎1