bootg.com »
United States »
iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT » Telegram Web
This media is not supported in your browser
VIEW IN TELEGRAM
Пример Scroll Transitions в новом SwiftUI
В SwiftUI появился новый очень простой способ реализовывать анимации при скроллинге таблицы – блок
В SwiftUI появился новый очень простой способ реализовывать анимации при скроллинге таблицы – блок
scrollTransition
.This media is not supported in your browser
VIEW IN TELEGRAM
The Composable Architecture в Swift 5.9
Посмотрите на пруф-ов-концепт того, насколько сильно сократится код фичей, написанных по TCA, благодаря макросам и Observability Framework.
Посмотрите на пруф-ов-концепт того, насколько сильно сократится код фичей, написанных по TCA, благодаря макросам и Observability Framework.
Управление и доступность в Vision Pro
Миша Рубанов подбил обзор принципов управления интерфейсом очков и того, как именно там реализованы разные виды accessibility – это просто космос.
Миша Рубанов подбил обзор принципов управления интерфейсом очков и того, как именно там реализованы разные виды accessibility – это просто космос.
Каталог макросов и полезных ресурсов
Если вы хотите вкатиться в макросы, начните с этого репозитория. Там собраны статьи, видео и примеры того, что можно сделать с их помощью. Например, power asserts, SFSymbol macros и AssociatedObject.
Если вы хотите вкатиться в макросы, начните с этого репозитория. Там собраны статьи, видео и примеры того, что можно сделать с их помощью. Например, power asserts, SFSymbol macros и AssociatedObject.
GitHub
GitHub - krzysztofzablocki/Swift-Macros: A curated list of awesome Swift Macros
A curated list of awesome Swift Macros. Contribute to krzysztofzablocki/Swift-Macros development by creating an account on GitHub.
Лучшие сессии WWDC
Чтобы вам не пришлось смотреть много десятков сессий, Apple собрали самые важные из них на одной странице. Самая крупная категория, конечно, Spatial Computing.
Чтобы вам не пришлось смотреть много десятков сессий, Apple собрали самые важные из них на одной странице. Самая крупная категория, конечно, Spatial Computing.
Apple
WWDC23 highlights - Discover - Apple Developer
Explore all the big updates from an incredible week of sessions
Лог Q&A про SwiftUI
Одна из обязательных активностей на WWDC – Q&A с инженерами Apple. На ней можно получить комментарии по темам, которые не освещаются в документации. Пролистайте всю дискуссию про SwiftUI – можете найти себе что-то полезное.
Одна из обязательных активностей на WWDC – Q&A с инженерами Apple. На ней можно получить комментарии по темам, которые не освещаются в документации. Пролистайте всю дискуссию про SwiftUI – можете найти себе что-то полезное.
Swift Discovery
WWDC23 SwiftUI Q&A
Issue #918
Interesting SwiftUI Q&A during WWDC23
Observable vs ObservableObject Q: With the new SwiftUI @Observable macro, are there any cases where ObservableObject would still be a better alternative?
A: Use ObservableObject when you need to back deploy…
Interesting SwiftUI Q&A during WWDC23
Observable vs ObservableObject Q: With the new SwiftUI @Observable macro, are there any cases where ObservableObject would still be a better alternative?
A: Use ObservableObject when you need to back deploy…
Swift OpenAPI package
Вышла альфа версия официального пакета от Apple для генерации сервера и клиента по спеке OpenAPI. Swift на сервере – это не очень интересно, а вот клиент – другое дело.
По спеке генерируются
Вышла альфа версия официального пакета от Apple для генерации сервера и клиента по спеке OpenAPI. Swift на сервере – это не очень интересно, а вот клиент – другое дело.
По спеке генерируются
APIProtocol
, который содержит в себе все методы API, и Client
, структура, которая реализует сгенерированный протокол. Работает все это как поверх URLSession, так и поверх любого другого транспорта.visionOS SDK доступен для загрузки
Вы спите, а Apple выпускает релизы для вас! Стал доступен Xcode 15 beta 2, в который включены visionOS SDK, Reality Composer Pro, приложение для создания 3D контента для очков, и симулятор новой операционной системы. Вся документация по фреймворкам лежит тут.
Вы спите, а Apple выпускает релизы для вас! Стал доступен Xcode 15 beta 2, в который включены visionOS SDK, Reality Composer Pro, приложение для создания 3D контента для очков, и симулятор новой операционной системы. Вся документация по фреймворкам лежит тут.
Подробный разбор основных изменений в SwiftUI
💅Улучшения ScrollView: постраничная анимация, возможность начинать скролл с нижней границы вьюшки, кастомные транзишны при скролле.
💅Анимации и рисование: добавление Metal шейдеров, комплишн блоки для анимаций, функции для комбинирования форм.
💅Интеграция с внутренними покупками, сериализация Color, повторение действия кнопки при долгом нажатии и многое другое.
💅Улучшения ScrollView: постраничная анимация, возможность начинать скролл с нижней границы вьюшки, кастомные транзишны при скролле.
💅Анимации и рисование: добавление Metal шейдеров, комплишн блоки для анимаций, функции для комбинирования форм.
💅Интеграция с внутренними покупками, сериализация Color, повторение действия кнопки при долгом нажатии и многое другое.
Hacking with Swift
What’s new in SwiftUI for iOS 17
This is another huge year of updates, delivering many highly requested features such as advanced scroll view effects, container relative sizing, and even Metal shaders.
Дизайн-киты для macOS Sonoma
Apple выложили дизайн-киты для новой версии macOS: все UI компоненты, окна, алерты, поповеры, элементы интерфейса вроде дока и уведомлений, цвета и стили.
🔗Sketch
🔗Figma
Apple выложили дизайн-киты для новой версии macOS: все UI компоненты, окна, алерты, поповеры, элементы интерфейса вроде дока и уведомлений, цвета и стили.
🔗Sketch
🔗Figma
This media is not supported in your browser
VIEW IN TELEGRAM
Анимация отрываемого стикера из iMessage
Выбор стикера для отправки в iMessage сопровождается анимацией, которая повторяет реальный эффект от отрывания стикера. Наш подписчик поделился статьей с реализацией такого эффекта, включая добавление теней и блеска.
Код на GitHub
Выбор стикера для отправки в iMessage сопровождается анимацией, которая повторяет реальный эффект от отрывания стикера. Наш подписчик поделился статьей с реализацией такого эффекта, включая добавление теней и блеска.
Код на GitHub
This media is not supported in your browser
VIEW IN TELEGRAM
Превью DocC в Xcode 15
В новой версии Xcode появилась возможность смотреть, как будет выглядеть сгенерированная с помощью DocC документация.
В новой версии Xcode появилась возможность смотреть, как будет выглядеть сгенерированная с помощью DocC документация.
Inspector – новый тип модального представления в SwiftUI
В SwiftUI появился новый модификатор –
В SwiftUI появился новый модификатор –
inspector(isPresented:content:)
. На macOS и iPadOS он добавляет колонку настраиваемой ширины с правой стороны экрана. На айфоне показывает Bottom Sheet.Пропуск тестов с XCTSkip
Если вы хотите, чтобы какие-то из ваших тестов временно не исполнялись, правильным подходом будет не переименовывать или комментировать их, а добавить вызов XCTSkip. А если вы хотите не выполнять тест только в каких-то условиях, например, в зависимости от типа устройства или версии OS, используйте
Если вы хотите, чтобы какие-то из ваших тестов временно не исполнялись, правильным подходом будет не переименовывать или комментировать их, а добавить вызов XCTSkip. А если вы хотите не выполнять тест только в каких-то условиях, например, в зависимости от типа устройства или версии OS, используйте
XCTSkipIf
и XCTSkipUnless
.Как MVC менялся со временем
Первое описание архитектуры MVC появилось еще в 1979 году. В коротком документе на 500 слов были сформулированы основные идеи:
- Model сообщает View о происходящих изменениях.
- View может не только получать сообщения об изменениях, но и проактивно запрашивать стейт, и даже самостоятельно менять модель. Но при этом ничего не знает о пользовательских ивентах.
- Controller обрабатывает пользовательские ивенты, меняет модель и вьюшку при необходимости.
В статье сравнивается два направления развития идей оригинального MVC – хорошо известный нам Apple-Style MVC и Model-2, популяризированный Ruby on Rails.
Первое описание архитектуры MVC появилось еще в 1979 году. В коротком документе на 500 слов были сформулированы основные идеи:
- Model сообщает View о происходящих изменениях.
- View может не только получать сообщения об изменениях, но и проактивно запрашивать стейт, и даже самостоятельно менять модель. Но при этом ничего не знает о пользовательских ивентах.
- Controller обрабатывает пользовательские ивенты, меняет модель и вьюшку при необходимости.
В статье сравнивается два направления развития идей оригинального MVC – хорошо известный нам Apple-Style MVC и Model-2, популяризированный Ruby on Rails.
Collin Donnell
MVC Isn’t MVC — Collin Donnell
In December of 1979 Tyrgve Reenskaug, an employee of Xerox PARC), published a paper called MODELS-VIEWS-CONTROLLERS about a design patter...
swift-outdated – пакет для отображения устаревших зависимостей
swift-outdated при запуске проверяет, у каких из зависимостей проекта появились новые версии, и выводит табличку с ними. Если добавить его как билд фазу в проект, то устаревшие зависимости будут отображаться как ворнинги.
swift-outdated при запуске проверяет, у каких из зависимостей проекта появились новые версии, и выводит табличку с ними. Если добавить его как билд фазу в проект, то устаревшие зависимости будут отображаться как ворнинги.
String Catalog в Xcode 15
В Xcode 15 появился новый способ управления локализованными строчками – String Catalog. При сборке проекта Xcode собирает все локализованные строки в одну таблицу, из которой вы можете редактировать ключи, значения и комментарии к ним.
Таблицы можно переводить на другие языки, при этом Xcode превращается в таск-менеджер на минималках: отображает общий прогресс перевода, дает возможность выставлять статус перевода у каждой из строк.
Здесь же можно настраивать плюрализацию и даже разное значение строк в зависимости от девайса, на котором запускается приложение.
В Xcode 15 появился новый способ управления локализованными строчками – String Catalog. При сборке проекта Xcode собирает все локализованные строки в одну таблицу, из которой вы можете редактировать ключи, значения и комментарии к ним.
Таблицы можно переводить на другие языки, при этом Xcode превращается в таск-менеджер на минималках: отображает общий прогресс перевода, дает возможность выставлять статус перевода у каждой из строк.
Здесь же можно настраивать плюрализацию и даже разное значение строк в зависимости от девайса, на котором запускается приложение.
Swift AST Explorer – инструмент для тех, кто хочет писать макросы
Если вы хотите научиться писать макросы, вам важно понимать, как выглядит AST вашего кода. Swift AST Explorer умеет парсить любой Swift код в AST и показывать разную статистику и метаинформацию.
Если вы хотите научиться писать макросы, вам важно понимать, как выглядит AST вашего кода. Swift AST Explorer умеет парсить любой Swift код в AST и показывать разную статистику и метаинформацию.
Выпуск PointFree про тестирование асинхронного кода
Тестировать асинхронный код встроенными средствами Swift и Xcode – сложно. В новом выпуске PointFree разбираются с костылями, нужными, чтобы протестировать код, в котором есть несколько отдельных асинхронных шагов.
Тестировать асинхронный код встроенными средствами Swift и Xcode – сложно. В новом выпуске PointFree разбираются с костылями, нужными, чтобы протестировать код, в котором есть несколько отдельных асинхронных шагов.
www.pointfree.co
Episode #238: Reliable Async Tests: The Problem
While Swift provides wonderful tools for writing async code, there are gaps in its tools for testing it. Let’s explore the tools it does provide to show where they succeed, and where they fall short.
Макросы в Swift
Хороший русскоязычный разбор того, как устроены макросы, как они запускаются, и что с их помощью можно автоматизировать.
Хороший русскоязычный разбор того, как устроены макросы, как они запускаются, и что с их помощью можно автоматизировать.
Хабр
Макросы в Swift
Всем привет! Меня зовут Никита Тархов, я iOS‑разработчик студии CleverPumpkin . Сегодня поговорим про макросы: что это такое, зачем нужны и где они применяются. Введение Макрос — один...