SwiftUI предоставляет мощный и декларативный способ создания пользовательских интерфейсов, но управление взаимодействием между разными View может показаться сложной задачей для тех кто только вкатывается в SwiftUI. В статье рассматривается практический сценарий: список с добавлением нового элемента. Сравниваются 3 подхода:
Closure
@Binding
@Environment
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
Forwarded from Android Broadcast
"Как из Леруа Мерлен сделали Лемана Про" (13м) - история ребрендинга приложения о том как меняли, цвета, строки, работу с Deep Link и другие части Android и iOS приложений
#compose #uikit #android #ios #swiftui
#compose #uikit #android #ios #swiftui
👍4
Придание глубины значкам вашего приложения
Не совсем про разработку, но точно полезно для расширения кругозора iOS разработчика:
🟢 Иконки являются первой точкой соприкосновения между пользователем и интерфейсом приложения
🟢 Значки приложений прошли путь от скевоморфизма до плоского дизайна и обратно к трехмерным элементам
🟢 Добавление глубины значку достигается с помощью внутренних теней, отбрасываемых теней и текстур
🟢 Экспериментирование с различными режимами наложения и текстурами поможет найти оптимальный процесс рендеринга для вашего стиля и уровня реализма
Главный вопрос, возникший у меня после прочтения статьи: зачем мы ушли от скевоморфизма😥
Не совсем про разработку, но точно полезно для расширения кругозора iOS разработчика:
Главный вопрос, возникший у меня после прочтения статьи: зачем мы ушли от скевоморфизма
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2
Отличный пример использования фич языка для разработки утилит командной строки. По сути, это DSL вокруг PropetyWrapper для удобной обработки ввода в командной строке
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Как отрендерить Markdown в SwiftUI
Оказывается, если передать Markdown в виде строки в SwiftUI элемент
Оказывается, если передать Markdown в виде строки в SwiftUI элемент
Text
, он отрендерится корректно. Для меня это было сюрпризом, т.к. при попытке передать переменную в Text
эта магия не срабатывала. Решается это передачей в виде аргумента не String
, а AttributedString
, с опицями AttributedString.MarkdownParsingOptions
.2❤5👍1
Поиск семантического расстояния между словами классическая задача для задачи поиска или автокомплита. Я помню только самый простой алгоритм с через вычисление Расстояния Левенштейна, но в современном мире у нас появился новый фреймворк для работы с текстом - Natural Language framework. Зачем это может понадобиться в повседневной работе? Например, в вашем приложении есть список категорий, при поиске пользователь ожидает что вы ему предложите нужную категорию до того как он введет слово целиком, даже если допустит опечатку в процессе. В статье приводится другой пример, с поиском подходящего слова-синонима в словаре языка, что позволяет реализовывать автокомплит без доступа к набору вариантов.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Не пропустите важную новость от Apple, центр сертификации для Apple Push Notification (APNs) меняется. APNs обновит сертификаты сервера в песочнице 20 января 2025 года, а на проде — 24 февраля 2025 года. Всем у кого есть пуши в приложениях, необходимо будет обновить хранилище, включив новый сертификат сервера: SHA-2 Root: сертификат центра сертификации USERTrust RSA.
Чтобы обеспечить плавный переход и избежать сбоев при доставке push-уведомлений, убедитесь, что как старые, так и новые сертификаты включены в хранилище доверенных сертификатов.
Сами сертификаты APNs SSL обновлять не требуется.
Если не поняли про что это, но у вас есть пуши, покажите эту новость вашим бек разработчикам. Если используете сторонний сервис для отправки пушей - они обновятся сами.
Please open Telegram to view this post
VIEW IN TELEGRAM
Apple
Apple Push Notification service server certificate update - Latest News - Apple Developer
The Certification Authority (CA) for Apple Push Notification service (APNs) is changing. APNs will update the server certificates in sandbox on January 20, 2025, and in production on February 24, 2025. All developers using APNs will need to update their application’s…
👍9
У каждого разработчика есть свои любимые инструменты, которыми мы часто забываем делиться с другими. Нам всегда кажется инструмент хорошо известным, сразу после того как мы его нашли. Автор статьи решил поделиться с нами своими инструментами:
• WTF Autolayout - расшифровка ошибок констрейнтов автолэйаута
• Xcode Tips - содержат подсказки и шорткаты для более продуктивного использования Xcode.
• Proxyman / Charles - Классика для управления HTTP/HTTPS запросами и ответами
Я для себя нашел пару новых, а вы? Пишите в комментарии те сервисы и инструменты, которыми пользуетесь в разработе
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
Параллелизм - ключевая концепция современного программирования для создания адаптивных и высокопроизводительных приложений. Еще Swift 5.5 управление параллелизмом получило новые инструменты, но не все их научились применять в своих проектах. В статье автор разбирается в основах работы акторов и на примере рассматривает лучшие практики для работы с параллелизмом. В примере автор создает простое приложение для управления задачами, используя SwiftUI и акторы. Это приложение позволит пользователям управлять задачами, добавляя новые задачи, помечая их как выполненные и удаляя их. Управление состоянием задач осуществляется акторами. Рассматриваются примеры:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Надеюсь, вы уже знаете о концепции Copy On Write и задавались вопросом, что это значит. На первый взгляд это может показаться загадочным и даже абстрактным, и его трудно представить. После прочтения данной статьи вы точно поймете, что это значит, как реализовать Copy On Write в Swift, а также познакомитесь с замечательным макросом Swift, который переносит логику Copy On Write в ваш код. Структура статьи:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍3❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Uber одним из первых внедрял дизайн систему и собрали за все время много шишек. Приложение запускает функции одновременно по всему миру, изменяя детали на сотнях экранов с помощью тысяч фича флагов... И сами признаются что ни дизайнеры, ни инженеры, ни QA, ни продакты не могут визуализировать каждый пользовательский сценарий. Uber нужна система мониторинга такого же масштаба для оценки качества дизайна, чтобы предотвратить ухудшение пользовательского опыта, особенно при внедрении доступности в существующих интерфейсах, разработанных в рамках базовой дизайн-системы Uber.
В статье ребята делятся своим опытом создания «Системы мониторинга дизайна»
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Это просто вау! Интересное повествание по созданию анимации с использованием
SwiftUI
и MetalKit
:UIKit
и MetalKit.
MTLComputePipelineState
для рендеринга частиц. ParticleCloud
включает анимацию прогресса и предварительную нормализацию точки касания. Я крайне советую полистать примеры кода и промежуточные этапы, редко получается рассказать про работу с Metal простым языком.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15👍4🔥1