bootg.com »
United States »
iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT » Telegram Web
Каталог Swift пакетов с поддержкой Android
Разработчики Skip продолжают готовить экосистему Swift к тому, чтобы ее можно было использовать и для Android разработки. Они прислали PR с добавлением Android таргета в кучу библиотек и завели отдельный сайт, который показывает текущий статус их миграции.
Разработчики Skip продолжают готовить экосистему Swift к тому, чтобы ее можно было использовать и для Android разработки. Они прислали PR с добавлением Android таргета в кучу библиотек и завели отдельный сайт, который показывает текущий статус их миграции.
Apple заопенсорсили Swift Build
Вот это я понимаю, классное начало года! Apple выложили в открытый доступ Swift Build, систему сборки Swift проектов, которая используется под капотом в Xcode. Судя по анонсу, поддерживается вообще все – и пакеты, и CLI-тулы, и GUI приложения.
Главное следствие – это огромный потенциал для того, чтобы адекватно работать со Swift в других IDE.
Вот это я понимаю, классное начало года! Apple выложили в открытый доступ Swift Build, систему сборки Swift проектов, которая используется под капотом в Xcode. Судя по анонсу, поддерживается вообще все – и пакеты, и CLI-тулы, и GUI приложения.
Главное следствие – это огромный потенциал для того, чтобы адекватно работать со Swift в других IDE.
Swift.org
The Next Chapter in Swift Build Technologies
Swift continues to grow in popularity as a cross-platform language supporting a wide variety of use cases, with support on a variety of embedded devices, form factors that encompass wearables to server, and a wide variety of operating systems. As Swift expands…
Ghostty – новый терминал
Недавно бывший фаундер HashiCorp выпустил свой новый проект, терминал Ghostty. В чем отличие от альтернатив: он быстрый, нативный на всех платформах, и содержит кучу фичей как уровня самого терминала (табы, автоматическое переключение темной темы), так и тех, что могут использовать запускаемые приложения. Я попробовал, мне пока очень нравится!
Недавно бывший фаундер HashiCorp выпустил свой новый проект, терминал Ghostty. В чем отличие от альтернатив: он быстрый, нативный на всех платформах, и содержит кучу фичей как уровня самого терминала (табы, автоматическое переключение темной темы), так и тех, что могут использовать запускаемые приложения. Я попробовал, мне пока очень нравится!
Как дебажить диплинки и Quick Actions
В чем проблема – при запуске приложения из Xcode дебаггер подключается к нему автоматически, а при закрытии – отключается. Поэтому, чтобы тестировать фичи, зависящие от запуска приложения альтернативными способами, нужно настроить специальную опцию "Wait for executable to be launched" в схеме запуска.
В чем проблема – при запуске приложения из Xcode дебаггер подключается к нему автоматически, а при закрытии – отключается. Поэтому, чтобы тестировать фичи, зависящие от запуска приложения альтернативными способами, нужно настроить специальную опцию "Wait for executable to be launched" в схеме запуска.
Tanaschita
Learn to debug iOS features that require app start from external actions in Xcode
Learn how to debug features like deep linking, universal links or home screen quick actions in Xcode with the scheme option wait for executable to be launched. Learn how to attach Xcode's debugger on app launch.
Про запуск сайд-проектов
Последний год разрабатывать свой микро-продукт стало намного проще, чем раньше. AI-ассистенты помогают быстро разобраться в новом стеке технологий, не тратя месяцы на его детальное изучение, а редакторы вроде Cursor помогают почти моментально получить рабочий прототип. Но лучший микро-продукт – не просто тот, который работает для вас и друзей, а тот, который помогает создать еще один источник дохода, снижая вашу зависимость от постоянного работодателя и давая вздохнуть чуть посвободнее.
Так вот инди-хакинг – это целое искусство, где важно не только придумать идею, но и уметь ее проверять, продвигать и зарабатывать на ней. Есть крутое комьюнити инди-хакеров, которое часто делится своими историями о запуске проектов и дает полезные советы. Вот несколько постов, с которых можно начать знакомство с этой темой:
👉Конвертер картинок с ценником в 40$
👉Темная тема для любых сайтов
👉Бот для создания фотокниг
Реклама. ИП Зуев, ИНН 360408359441, erid:2SDnjeS1DMW
Последний год разрабатывать свой микро-продукт стало намного проще, чем раньше. AI-ассистенты помогают быстро разобраться в новом стеке технологий, не тратя месяцы на его детальное изучение, а редакторы вроде Cursor помогают почти моментально получить рабочий прототип. Но лучший микро-продукт – не просто тот, который работает для вас и друзей, а тот, который помогает создать еще один источник дохода, снижая вашу зависимость от постоянного работодателя и давая вздохнуть чуть посвободнее.
Так вот инди-хакинг – это целое искусство, где важно не только придумать идею, но и уметь ее проверять, продвигать и зарабатывать на ней. Есть крутое комьюнити инди-хакеров, которое часто делится своими историями о запуске проектов и дает полезные советы. Вот несколько постов, с которых можно начать знакомство с этой темой:
👉Конвертер картинок с ценником в 40$
👉Темная тема для любых сайтов
👉Бот для создания фотокниг
Реклама. ИП Зуев, ИНН 360408359441, erid:2SDnjeS1DMW
Словарь Swift Concurrency
Полный список всех терминов, относящихся к Swift Concurrency, разблр каждого из них, и ссылка на пропозал, в котором его впервые представили.
Полный список всех терминов, относящихся к Swift Concurrency, разблр каждого из них, и ссылка на пропозал, в котором его впервые представили.
Поддержка кастомных инструкций к репозиторию в Copilot
Теперь вы можете добавить файл
Теперь вы можете добавить файл
.github/copilot-instructions.md
в ваш репозиторий, описать там дополнительные детали про ваш проект: технический стек, принятые стандарты, желаемое поведение ассистента – и Copilot будет учитывать их при работе.Распознавание номеров телефонов с локальными моделями
Ребята решили разработать приложение, которое с помощью камеры определяло бы и парсило телефонные номера – как печатные, так и рукописные. В процессе они наступили на все возможные грабли, включая попытку использовать Multipeer Connectivity, который все такой же сломанный, как и 10 лет назад, когда я сам пробовал делать на нем проект, и парсинг на регулярных выражениях, что вообще никогда не бывает хорошей идеей.
Но вообще статья кайф, рекомендую!
Ребята решили разработать приложение, которое с помощью камеры определяло бы и парсило телефонные номера – как печатные, так и рукописные. В процессе они наступили на все возможные грабли, включая попытку использовать Multipeer Connectivity, который все такой же сломанный, как и 10 лет назад, когда я сам пробовал делать на нем проект, и парсинг на регулярных выражениях, что вообще никогда не бывает хорошей идеей.
Но вообще статья кайф, рекомендую!
Хабр
Как мы сделали on-device-распознавание номеров телефонов для ИТ-Пикника
Всем привет! На связи Владимир Бойко и Александр Лахонин, мы занимаемся продуктом «Умная камера» в Центре технологий искусственного интеллекта Т-Банка. В статье рассказываем, как в суперсжатые сроки...
Мы очень хотим записать большой выпуск Подлодки про Swift – поговорить про философию языка, ключевые фичи, необычные технические концепции, успехи в нишах за пределами iOS разработки, и, главное, про постепенное сближение с С++.
Если вы:
👉Глубоко знаете и Swift, и С++
👉Следите за эволюцией Swift
👉Умеете бодро и интересно рассуждать про языки программирования
👉В идеале писали не только мобильные приложения, но и что-то еще в экосистеме Swift
То отзывайтесь в нашей форме поиска гостей!
Если вы:
👉Глубоко знаете и Swift, и С++
👉Следите за эволюцией Swift
👉Умеете бодро и интересно рассуждать про языки программирования
👉В идеале писали не только мобильные приложения, но и что-то еще в экосистеме Swift
То отзывайтесь в нашей форме поиска гостей!
Google Docs
Поиск гостей в подкаст Podlodka
Выбор тем и гостей подкаста работает по следующей логике – ведущие выбирают темы, которые им интересны и ищут релевантных крутых экспертов, которые могут их раскрыть. Есть темы, найти гостей на которые самостоятельно довольно сложно, поэтому мы завели эту…
Новый релиз Swift Playground
Apple впервые за долгое время обновили Swift Playgrounds для iPad, одновременно переименовав его в Swift Playground. Главное в обновлении – поддержка iOS 18, но завезли и небольшие интерфейсные изменения.
Apple впервые за долгое время обновили Swift Playgrounds для iPad, одновременно переименовав его в Swift Playground. Главное в обновлении – поддержка iOS 18, но завезли и небольшие интерфейсные изменения.
mutatingfunc.github.io
Breaking down Swift Playgrounds 4.6
Apple has released the long-awaited Swift Playgrounds 4.6 update, or as it’s now known, Swift Playground!
The release notes read as follows:
This update includes a new document browser to easily create a new playground or find a recent one, and provides bug…
The release notes read as follows:
This update includes a new document browser to easily create a new playground or find a recent one, and provides bug…
Потоки под капотом
Громадная статья Саши Сычева про то, как потоки в iOS работают под капотом, и как понимание закона Амдала помогает разработчику в прикладных задачах.
Громадная статья Саши Сычева про то, как потоки в iOS работают под капотом, и как понимание закона Амдала помогает разработчику в прикладных задачах.
Хабр
Потоки под капотом: как работают многопоточность и синхронизация в iOS
Привет! Я Александр Сычев, iOS‑эксперт в KTS . В этой статье поговорю о потоках. В решении рабочих задач и прохождении собеседований часто затрагиваются вопросы, связанные...
Как рисовать карты на Swift Charts
С помощью Swift Charts можно отрисовывать не только графики, но и карты с регионами по массиву координат. Получившиеся карты можно делать интерактивными – например, выделять регион по тапу на него.
С помощью Swift Charts можно отрисовывать не только графики, но и карты с регионами по массиву координат. Получившиеся карты можно делать интерактивными – например, выделять регион по тапу на него.
Swift-плагин для VS Code
Плагин для VS Code существует уже какое-то время, но разрабатывался он не как официальный проект. Теперь его код перенесли в официальный GitHub Swift, и сам экстеншн загрузили в магазин плагинов VS Code.
Плагин для VS Code существует уже какое-то время, но разрабатывался он не как официальный проект. Теперь его код перенесли в официальный GitHub Swift, и сам экстеншн загрузили в магазин плагинов VS Code.
Что опенсорс Swift Build значит для экосистемы
Шикарный разбор главного события последнего месяца от команды Tuist, основная ценность проекта которых как раз и заключается в том, что они прятали сложность xcodebuild подальше от людей.
Из интересного – очень вероятным следующим шагом будет появление универсального DSL для описания проекта, который сможет заменить и Package.swift, и xcodeproj.
Шикарный разбор главного события последнего месяца от команды Tuist, основная ценность проекта которых как раз и заключается в том, что они прятали сложность xcodebuild подальше от людей.
Из интересного – очень вероятным следующим шагом будет появление универсального DSL для описания проекта, который сможет заменить и Package.swift, и xcodeproj.
tuist.dev
What Swift Build means for the Swift ecosystem
In blog post we share our perspective on what Swift Build might mean for the Swift ecosystem, drawing from our extensive experience working with Xcode projects, and how it aligns with the plans we have for Tuist.
Плагин Copilot для Xcode вышел уже несколько месяцев назад. Расскажите, пользуетесь ли вы им? Что работает хорошо, а что – не очень? Насколько сказывается на вашем опыте тот факт, что к Xcode он прикручен костылями?
GitHub
GitHub - github/CopilotForXcode: Xcode extension for GitHub Copilot
Xcode extension for GitHub Copilot. Contribute to github/CopilotForXcode development by creating an account on GitHub.
Рекламные агентские аккаунты от Traffic Heroes
Не секрет, что маркетологи часто тратят много времени на прогрев рекламных аккаунтов, или сталкиваются с блокировками со стороны рекламных сеток по непонятным причинам.
Использование агентских аккаунтов существенно облегчает процесс запуска рекламных кампаний, а также позволяет вести все в одном пространстве. Также есть ряд преимуществ, которые помогут сократить косты: аккаунты без НДС (помогают сэкономить до 27% расходов на рекламу), а в случае блокировки есть 100% возврат средств на вашу карту.
С какими площадками работаем?
Google, Tiktok, Snapchat, Bigo.
Как получить аккаунт?
Нужно зарегистрироваться на сайте, написать в бот @trafficheroesbot и запросить доступ к нужной сетке.
Контакт для связи @trafficheroesbot
Наш сайт
Не секрет, что маркетологи часто тратят много времени на прогрев рекламных аккаунтов, или сталкиваются с блокировками со стороны рекламных сеток по непонятным причинам.
Использование агентских аккаунтов существенно облегчает процесс запуска рекламных кампаний, а также позволяет вести все в одном пространстве. Также есть ряд преимуществ, которые помогут сократить косты: аккаунты без НДС (помогают сэкономить до 27% расходов на рекламу), а в случае блокировки есть 100% возврат средств на вашу карту.
С какими площадками работаем?
Google, Tiktok, Snapchat, Bigo.
Как получить аккаунт?
Нужно зарегистрироваться на сайте, написать в бот @trafficheroesbot и запросить доступ к нужной сетке.
Контакт для связи @trafficheroesbot
Наш сайт
Бесплатная альтернатива App Center Distribution
Emerge сделали свой сервис по распространению iOS и Android билдов бесплатным. Лимиты довольно неплохие для большинства команд:
👉5000 билдов в месяц
👉Неограниченное количество пользователей
👉SSO
👉SDK для автоматического уведомления пользователей о новых сборках
Детали вот тут.
Emerge сделали свой сервис по распространению iOS и Android билдов бесплатным. Лимиты довольно неплохие для большинства команд:
👉5000 билдов в месяц
👉Неограниченное количество пользователей
👉SSO
👉SDK для автоматического уведомления пользователей о новых сборках
Детали вот тут.
Emerge Tools
Overview
Emerge's Build Distribution platform simplifies the distribution of iOS and Android app builds with features like QR code scanning, SSO authentication, and CI/CD pipeline integration, making it easy for developers and teams to manage app updates.
Рабочая группа вокруг Swift on Android
История вокруг использования Swift для Android разработки продолжается! Сообщество собрало вокруг этого движа рабочую группу, в которую входят как разработчики Skip, так и другие люди. Пока их план – встречаться и обсуждать проблемы, но в будущем надеются стать официальной частью проекта Swift.
История вокруг использования Swift для Android разработки продолжается! Сообщество собрало вокруг этого движа рабочую группу, в которую входят как разработчики Skip, так и другие люди. Пока их план – встречаться и обсуждать проблемы, но в будущем надеются стать официальной частью проекта Swift.
⚡️Кросс-платформа — ваш новый шаг в развитии iOS!
Вы знаете, как делать приложения для iOS. А теперь представьте, что один и тот же код может работать и на iOS, и на Android. Пора узнать, как реализовать это с помощью KMP?
На открытом вебинаре сегодня в 20:00 мск вы узнаете:
- Что такое кросс-платформенная разработка и почему она — будущее;
- Как сделать iOS-приложение мультиплатформенным;
- Как использовать актуальные инструменты Compose Multiplatform.
Зарегистрируйтесь на открытый урок в преддверие старта курса «iOS Developer»! Все участники получат скидку на обучение. Встречаемся сегодня 19 февраля в 20:00 мск.
👉Регистрируйтесь: https://otus.pw/sx16/
🔥Также действует дополнительная скидка 5% по промокоду SPECIOS02 до 13.03.2025!
Вы знаете, как делать приложения для iOS. А теперь представьте, что один и тот же код может работать и на iOS, и на Android. Пора узнать, как реализовать это с помощью KMP?
На открытом вебинаре сегодня в 20:00 мск вы узнаете:
- Что такое кросс-платформенная разработка и почему она — будущее;
- Как сделать iOS-приложение мультиплатформенным;
- Как использовать актуальные инструменты Compose Multiplatform.
Зарегистрируйтесь на открытый урок в преддверие старта курса «iOS Developer»! Все участники получат скидку на обучение. Встречаемся сегодня 19 февраля в 20:00 мск.
👉Регистрируйтесь: https://otus.pw/sx16/
🔥Также действует дополнительная скидка 5% по промокоду SPECIOS02 до 13.03.2025!
Реклама. ООО «Отус онлайн-образование»,
ОГРН 1177746618576,
erid: 2SDnjd8fzU4
Как воспроизводить state restoration
В SwiftUI state restoration реализуется через SceneStorage. При этом протестировать его работу вручную – задача не очень тривиальная, так как при закрытии приложения через app switcher он сбросится. Вместо этого нужно сделать следующие шаги:
👉Запустите приложение в симуляторе
👉Измените стейт (например, пробегитесь по навигации)
👉Нажмите Home, отправьте приложение в бэкграунд
👉Нажмите Stop в Xcode
👉Запустите приложение из Xcode еще раз и проверьте, что стейт восстановился
В SwiftUI state restoration реализуется через SceneStorage. При этом протестировать его работу вручную – задача не очень тривиальная, так как при закрытии приложения через app switcher он сбросится. Вместо этого нужно сделать следующие шаги:
👉Запустите приложение в симуляторе
👉Измените стейт (например, пробегитесь по навигации)
👉Нажмите Home, отправьте приложение в бэкграунд
👉Нажмите Stop в Xcode
👉Запустите приложение из Xcode еще раз и проверьте, что стейт восстановился
Nil Coalescing
Testing SceneStorage state persistence in Xcode
Verify SwiftUI app state restoration using the Xcode simulator by following the correct steps, including backgrounding the app and relaunching it.