Network Link Conditioner
Если вы тестируете свое приложение на девайсе или симмуляторе в условиях хорошей сети, вы точно пропускаете часть проблем, возникающих у пользователей. Сотовая сеть не везде хорошо ловит, а даже если ловит хорошо, может оказаться что вышка перегружена и LTE превращается в 3g. Для этого в iOS и MacOS существует отдельный инструмент "Network Link Conditioner". Вот как его включить:
🟢 В macOS Sequoia он не входит в стандартный набор ОС, требуется установить Additional Tools for Xcode
🟢 На устройстве Network Link Conditioner можно найти в разделе настроек разработчика, который появляется после активации
Главное-не забыть его выключить, ставьте 🎉 кто забывал. Я как-то неделю ходил с 3G
Если вы тестируете свое приложение на девайсе или симмуляторе в условиях хорошей сети, вы точно пропускаете часть проблем, возникающих у пользователей. Сотовая сеть не везде хорошо ловит, а даже если ловит хорошо, может оказаться что вышка перегружена и LTE превращается в 3g. Для этого в iOS и MacOS существует отдельный инструмент "Network Link Conditioner". Вот как его включить:
Главное-не забыть его выключить, ставьте 🎉 кто забывал. Я как-то неделю ходил с 3G
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉24👍4
Я убежден, что разработчик должен высказывать свое мнение про фичи, которые разрабатывает. А чтобы высказываться по делу, нужно самому понимать что считается стандартом индустрии. Данная статья как раз про это, при чем выходит за рамки Apple Human Interface Guidelines.
Первое впечатление можно произвести только один раз. А неконсистентный опыт внутри приложения перечеркивает весь позитив. Важно продумать не только успешные сценарии но и сценарии ошибок. Каждый переход формирует общее впечатление пользователя. При подключении пользователи ожидают увидеть экран приветствия и, возможно, краткое руководство. После многократного использования приложения просмотр одних и тех же советов точно надоест. Хорошо разработанное приложение учитывает потребности пользователей и адаптируется к ним во всех ситуациях, повышая общую эффективность приложения и вовлеченность пользователей.
Первое впечатление: Онбординг и начало работы
Состояние: Успешный сценарий
Состояние: Загрузка
Состояние: Ошибка
Состояние: Прощание
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤1👌1
Что означает Swift Build для экосистемы Swift
А вот и первый обзор swift build от команды, занимающейся работой с Xcode. Tuist подтвердили важность выхода в опенсорс и раскрыли это со своей стороны:
Влияние на опыт разработчиков
🔵 Более быстрое внедрение улучшений
🔵 Повышенная надежность и детерминизм сборки
🔵 Расширяемость и поддержка новых платформ
🔵 Оптимизация времени сборки и новые возможности в программировании
Tuist и Swift Build
🔵 Tuist стремится улучшить качество создания приложений
🔵 Swift Build открывает новые возможности для Tuist
🔵 Tuist создает серверную инфраструктуру и стандартизирует данные
Будущее Swift Build
🔵 Возможно появление Swift Build DSL для объявления графиков
🔵 Tuist заявляет о участии в развитии экосистемы и будет вносить свои идеи в swift build
А вот и первый обзор swift build от команды, занимающейся работой с Xcode. Tuist подтвердили важность выхода в опенсорс и раскрыли это со своей стороны:
Влияние на опыт разработчиков
Tuist и Swift Build
Будущее Swift Build
Please open Telegram to view this post
VIEW IN TELEGRAM
Swift предоставляет множество встроенных форматтеров, один из которых форматтер списков ListFormatter (iOS 13+). Он помогает объединять списки элементов в удобочитаемые предложения:
#swift #list #formatter #listformatter
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9
Продолжаю разбирать пропоузалы Swift. В этом предложении вводится новый атрибут
@specialized
, который позволяет в дженерик функции генерировать предварительно специализированные версии этой функции для определенных типов. Эта специализация создает пользовательскую реализацию функции, где "дженерики" заменяются определенными типами. Это позволяет оптимизировать функции, под конкретные типы: когда неспециализированная версия функции вызывается с одним из этих типов, компилятор генерирует код, который будет повторно отправлен в эти предварительно специализированные версии, если таковые имеются. Врядли это пригодится где-то кроме Foundation и специализированных фреймворков, но идея интересная.#swift #evolution
Please open Telegram to view this post
VIEW IN TELEGRAM
Отладка фич, таких как диплинки или быстрые действия с главного экрана, может быть сложной задачей. По умолчанию отладчик автоматически подключается при запуске приложения в Xcode. После завершения работы приложения отладчик отключается, что затрудняет тестирование. Но можно изменить поведение в Xcode - выбрать опцию "Wait for executable to be launched". Эта опция позволяет подключать отладчик к приложению даже при ручном запуске.
Шаги:
Добавляйте в
#xcode #deeplink #debugging #tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14
Вышла новая версия расширения Swift для Visual Studio Code. Расширение поддерживает разработку приложений Swift на всех платформах. Расширение упрощает разработку приложений Swift для серверных, облачных, встраиваемых и Linux/Windows приложений.
Работает так же через SourceKit-LSP. Посмотреть на реализацию и законтрибьютить можно сюда, если готовы писать на typescript.
К сожалению, это не делает расширение более подходящим для iOS разработки, но радует что поддержка не забросилась и вышел мажорный апдейт. Для меня поддержка VSCode - возможность работать с AI ассистентами, ассистент в Xcode не оправдал ожиданий, а все решения вокруг Xcode больше похожи на костыль
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5