bootg.com »
United States »
iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT » Telegram Web
Привет! На связи Podlodka iOS Crew — онлайн-конференция для мобильных разработчиков.
🤔 Развитие в IT порой напоминает блуждание по лабиринту. Куда свернуть, какой путь выбрать? C джунами всё понятно — нужно растить грейд до middle и senior, но что делать дальше?
📈 Как правильно выстроить карьеру iOS-разработчика — вот основная тема нового сезона, который стартует 27 ноября.
В этот раз вас ждут важные пойнты про эволюцию iOS-программиста. Спикеры из крупных компаний уделят внимание трём китам развития — опыту, навыкам и практике:
🔹 Помогут составить карьерный роадмап — найти точки роста, источники вдохновения, преодолеть ментальные барьеры.
🔹 Объяснят, как привести pet-проект к результату в 10к пользователей в месяц.
🔹 Обсудят, как работать в зарубежных компаниях в разных частях мира на круглом столе.
🎁 Бонус: новый формат Podlodka Lightning Talks. Это короткие авторские видео от экспертов iOS-разработки о hard и soft-навыках.
📍 Купить билет можно на сайте: https://podlodka.io/ioscrew
🤔 Развитие в IT порой напоминает блуждание по лабиринту. Куда свернуть, какой путь выбрать? C джунами всё понятно — нужно растить грейд до middle и senior, но что делать дальше?
📈 Как правильно выстроить карьеру iOS-разработчика — вот основная тема нового сезона, который стартует 27 ноября.
В этот раз вас ждут важные пойнты про эволюцию iOS-программиста. Спикеры из крупных компаний уделят внимание трём китам развития — опыту, навыкам и практике:
🔹 Помогут составить карьерный роадмап — найти точки роста, источники вдохновения, преодолеть ментальные барьеры.
🔹 Объяснят, как привести pet-проект к результату в 10к пользователей в месяц.
🔹 Обсудят, как работать в зарубежных компаниях в разных частях мира на круглом столе.
🎁 Бонус: новый формат Podlodka Lightning Talks. Это короткие авторские видео от экспертов iOS-разработки о hard и soft-навыках.
📍 Купить билет можно на сайте: https://podlodka.io/ioscrew
Обзор новой библиотеки swift-testing
Пару недель назад я рассказывал, что Apple выложили раннее превью swift-testing – новой библиотеки для тестирования, основанной на макросах. Автор статьи поэкспериментировал с ней и подробно описал все фичи.
Пару недель назад я рассказывал, что Apple выложили раннее превью swift-testing – новой библиотеки для тестирования, основанной на макросах. Автор статьи поэкспериментировал с ней и подробно описал все фичи.
Полезное применение Quick Actions
В Твиттере предложили топовую идею использования Quick Actions – добавить туда просьбу поделиться обратной связью. Когда пользователь захочет удалить приложение, он точно на нее наткнется, и шанс получить полезный фидбэк вырастет.
В Твиттере предложили топовую идею использования Quick Actions – добавить туда просьбу поделиться обратной связью. Когда пользователь захочет удалить приложение, он точно на нее наткнется, и шанс получить полезный фидбэк вырастет.
Опыт реализации App Clips
Ребята из Додо делятся своим опытом работы с App Clips для создания облегченной версии приложения для официантов. Из интересного:
👉В iOS 17 значительно подняли лимит размера бинарника, до 50MB
👉Ephemeral пуши, созданные специально под App Clips, могут работать без разрешения только 8 часов
👉Нельзя реализовывать уникальные фичи, которых нет в основном приложении
👉После создания App Clip может пройти несколько недель, пока Apple индексирует URLы, и все это время работать он не будет
Ребята из Додо делятся своим опытом работы с App Clips для создания облегченной версии приложения для официантов. Из интересного:
👉В iOS 17 значительно подняли лимит размера бинарника, до 50MB
👉Ephemeral пуши, созданные специально под App Clips, могут работать без разрешения только 8 часов
👉Нельзя реализовывать уникальные фичи, которых нет в основном приложении
👉После создания App Clip может пройти несколько недель, пока Apple индексирует URLы, и все это время работать он не будет
Хабр
App Clip и тысяча проблем
Знакомство Menusa - проект Dodo Brands. Инструмент по автоматизации процессов для малого бизнеса в сфере общепита. Как мы работаем: Есть мобильное приложение, через которое добавляются продукты в...
Observation вне SwiftUI
Observation framework можно использовать за пределами SwiftUI для того, чтобы следить за изменениями интересующего объекта. В статье разбирается простой пример такого использования и несколько особенностей поведения, с которыми вы можете столкнуться.
Observation framework можно использовать за пределами SwiftUI для того, чтобы следить за изменениями интересующего объекта. В статье разбирается простой пример такого использования и несколько особенностей поведения, с которыми вы можете столкнуться.
Nil Coalescing
Using Observation framework outside of SwiftUI
Monitor changes to specific properties of an observable class using withObservationTracking() function from Observation framework in iOS 17.
Миграции в SwiftData
Пошаговая инструкция по определению версионированных схем данных в SwiftData, описанию порядка миграции с версии на версию и выбору между кастомной и легковесной миграцией.
Пошаговая инструкция по определению версионированных схем данных в SwiftData, описанию порядка миграции с версии на версию и выбору между кастомной и легковесной миграцией.
Tanaschita
How to migrate to a new schema with SwiftData in iOS
Whenever we release a new version of our app where we made changes to our SwiftData models, we need to make sure that SwiftData is able to migrate between the old and the new schema to prevent data loss.
Видео с конференции SwiftLeeds
Вышли в открытый доступ все видео с недавней конференции SwiftLeeds. Из интересных сессий:
👉Как iOS разработчику стать Staff+ инженером
👉Под капотом 3D трансформаций вьюх
👉Accessibility для карт и навигации
Вышли в открытый доступ все видео с недавней конференции SwiftLeeds. Из интересных сессий:
👉Как iOS разработчику стать Staff+ инженером
👉Под капотом 3D трансформаций вьюх
👉Accessibility для карт и навигации
YouTube
iOS at Staff+ by Joel Kin - SwiftLeeds 2023
The industry has a pretty clear idea of what a Senior Engineer is. But after that, expectations start to fall apart. Many companies don’t have Staff+ roles at all–if you want to advance, you’re headed to management. Some companies hire at those levels to…
Advent of Code 2023
Вы думаете, почему в понедельник и вторник не было постов? Да потому, что начался advent of code, и я ушел решать задачи(на самом деле нет, конечно, просто ленился) . Так вот, кто не в курсе – каждый год с 1 по 25 декабря появляется новая задача, которую вы можете решать любыми способами и на любом языке. Чтобы поучаствовать в соревновании, нужно просто отправить правильный ответ. В этом году Swift присоединился к официальной тусовке, выпустил шаблон для быстрого старта и завел официальный лидерборд. Так что присоединяйтесь, это весело!
Вы думаете, почему в понедельник и вторник не было постов? Да потому, что начался advent of code, и я ушел решать задачи
Swift Forums
Advent of Code 2023
Hi Swift Community! Anyone interested in having a little Swift coding challenge fun? Every December, Eric Wastl publishes a playful set of coding exercises called the “Advent of Code”. He publishes one challenge per day, every day, from December 1st to…
Unit тесты на Observation
Observation framework выпустили уже довольно давно, а про лучшие практики тестирования кода с ним еще никто не написал. В статье разбирается, чем отличается тестирование Combine от Observation, и какие хелперы могут помочь в тестах.
Observation framework выпустили уже довольно давно, а про лучшие практики тестирования кода с ним еще никто не написал. В статье разбирается, чем отличается тестирование Combine от Observation, и какие хелперы могут помочь в тестах.
Jacob’s Tech Tavern
Unit Test the Observation Framework
Make your iOS 17 view models rock-solid
Прячем API ключи в on-demand ресурсах
Неожиданный способ использовать on-demand ресурсы – после первой установки приложения скачивать файл, в котором зашиты API ключи для работы с сервером. От анализа бинарника оно, конечно, защитит, но кто мешает посмотреть на файлы после их скачивания, непонятно.
Код можно чекнуть тут.
Неожиданный способ использовать on-demand ресурсы – после первой установки приложения скачивать файл, в котором зашиты API ключи для работы с сервером. От анализа бинарника оно, конечно, защитит, но кто мешает посмотреть на файлы после их скачивания, непонятно.
Код можно чекнуть тут.
AeroSpace – оконный менеджер для macOS
Мой коллега выпустил крутейший оконный менеджер, который работает вне нативных macOS Spaces. Работает очень быстро, удобные хоткеи, поддерживает несколько мониторов.
👉Демка на YouTube
Мой коллега выпустил крутейший оконный менеджер, который работает вне нативных macOS Spaces. Работает очень быстро, удобные хоткеи, поддерживает несколько мониторов.
👉Демка на YouTube
Все зависимости надо держать в VCS
Автор топит за то, что под Git надо держать вообще все зависимости проекта – начиная от библиотек, заканчивая тулчейном компилятора. Склонированного репозитория должно быть достаточно, чтобы выключить интернет и собрать проект с нуля на новой машине. Плюсы такого подхода, ограничения реального мира и фантазии о том, как могла бы выглядеть оптимизированная под такой сценарий VCS будущего – в статье.
Автор топит за то, что под Git надо держать вообще все зависимости проекта – начиная от библиотек, заканчивая тулчейном компилятора. Склонированного репозитория должно быть достаточно, чтобы выключить интернет и собрать проект с нуля на новой машине. Плюсы такого подхода, ограничения реального мира и фантазии о том, как могла бы выглядеть оптимизированная под такой сценарий VCS будущего – в статье.
Forrestthewoods
Dependencies Belong in Version Control
Why dependencies should be checked into version control.
Макрос для параметризованных тестов
Параметризованные тесты позволяют не дублировать кучу кода и делать покрытие кода более полным. Макрос XCTestParametrizedMacro позволяет легко задавать массив входных данных, ожидаемых результатов теста и лейблов, которые поммогут идентифицировать упавший тест.
Параметризованные тесты позволяют не дублировать кучу кода и делать покрытие кода более полным. Макрос XCTestParametrizedMacro позволяет легко задавать массив входных данных, ожидаемых результатов теста и лейблов, которые поммогут идентифицировать упавший тест.
Medium
Parametrizing unit tests with XCTestParametrizedMacro
Unit testing is a software testing technique where a software program is dissected into smaller components (units) and each unit undergoes…
Privacy манифесты для сторонних SDK
Теперь, если ваше приложение использует сторонние библиотеки, которые под капотом вызывают потенциально небезопасные для пользователя API, вам надо добавлять их в специальный манифест. Вот некоторые из таких SDK:
👉AFNetworking и Alamofire
👉Cordova
👉FBSDKLoginKit и FBSDKShareKit
👉FirebaseAuth
👉Flutter
👉Lottie
👉RxSwift
👉SDWebImage
👉SwiftyJson
Теперь, если ваше приложение использует сторонние библиотеки, которые под капотом вызывают потенциально небезопасные для пользователя API, вам надо добавлять их в специальный манифест. Вот некоторые из таких SDK:
👉AFNetworking и Alamofire
👉Cordova
👉FBSDKLoginKit и FBSDKShareKit
👉FirebaseAuth
👉Flutter
👉Lottie
👉RxSwift
👉SDWebImage
👉SwiftyJson
Apple
Upcoming third-party SDK requirements - Support - Apple Developer
Third-party software development kits (SDKs) can provide great functionality for apps; they can also have the potential to impact user privacy in ways that aren’t obvious to developers and users. As a reminder, when you use a third-party SDK with your app…
Визуализация иерархии вьюшек на SceneKit
Если вам не подходит FLEX и другие решения для того, чтобы визуализировать иерархию компонентов в дебажном меню, такую штуку вполне можно собрать самостоятельно. Ребята из Альфы делятся своим опытом борьбы с возможными проблемами.
Если вам не подходит FLEX и другие решения для того, чтобы визуализировать иерархию компонентов в дебажном меню, такую штуку вполне можно собрать самостоятельно. Ребята из Альфы делятся своим опытом борьбы с возможными проблемами.
Хабр
DebugMenu и визуальная иерархия элементов интерфейса
Примечание . Эта статья является дополнением к статье Дебаггинг приложения без Xcode. Зачем? В начале квартала, в Альфе, мы выбираем себе технические таски — задачи, направленные на техническое...
Как трекать позицию view в скроллящихся списках
Иногда вам нужно отслеживать позицию какой-то конкретной вьюхи в таблице. Например, чтобы отслеживать отображаемый видеоплеер, или репортить отображение рекламы или рекомендаций в аналитику. При решении задачи в лоб можно довольно сильно испортить перфоманс скролла. В статье разбираются способы отслеживания как элементов внутри скролла, так и любой вьюшки в произвольной иерархии.
Иногда вам нужно отслеживать позицию какой-то конкретной вьюхи в таблице. Например, чтобы отслеживать отображаемый видеоплеер, или репортить отображение рекламы или рекомендаций в аналитику. При решении задачи в лоб можно довольно сильно испортить перфоманс скролла. В статье разбираются способы отслеживания как элементов внутри скролла, так и любой вьюшки в произвольной иерархии.
Medium
An effective and deterministic way to track UIView position on screen
Sometimes we may need to track some view position in some scrollable collection. Such tasks may appear when we want to for instance:
Вышли первые Mobile Interview — неформальные беседы про мобильную разработку в Яндексе
Ребята из разных команд мобильной разработки Яндекса рассказывают, какие задачи решают каждый день и почему им нравится эта работа. Первые выпуски уже можно посмотреть на YouTube-канале Yandex for Mobile:
🔸 В первом выпуске обсудили инфраструктуру Такси. Как и зачем собирать команду мобильной инфраструктуры приложения и чем ребята занимаются на ежедневной основе.
🔸 Во втором выпуске разбирались в разработке Карт. Какие задачи ребята решают, как адаптируются под сложности определения геолокации, развивается ли MapKit, как уживаются приложения Карт и Навигатора.
🔸 В третьем выпуске беседовали о разработке под iOS. Как мы делали браузер под iOS, легко ли переключаться между платформами и под какую проще разрабатывать, что нужно сделать, чтобы завоевать авторитет в большой команде, и в чём заключается специфика разработки браузеров.
🔸 В четвёртом выпуске поговорили с деврелом. Что за люди делают мероприятия для мобильных разработчиков, как организовать большую конференцию и не сойти с ума, чем ещё занимаются DevRel-команды и зачем простым разработчикам связываться с ними.
Смотрите интервью и подписывайтесь на канал — скоро там выйдет пятый выпуск Mobile Interview.
Ребята из разных команд мобильной разработки Яндекса рассказывают, какие задачи решают каждый день и почему им нравится эта работа. Первые выпуски уже можно посмотреть на YouTube-канале Yandex for Mobile:
🔸 В первом выпуске обсудили инфраструктуру Такси. Как и зачем собирать команду мобильной инфраструктуры приложения и чем ребята занимаются на ежедневной основе.
🔸 Во втором выпуске разбирались в разработке Карт. Какие задачи ребята решают, как адаптируются под сложности определения геолокации, развивается ли MapKit, как уживаются приложения Карт и Навигатора.
🔸 В третьем выпуске беседовали о разработке под iOS. Как мы делали браузер под iOS, легко ли переключаться между платформами и под какую проще разрабатывать, что нужно сделать, чтобы завоевать авторитет в большой команде, и в чём заключается специфика разработки браузеров.
🔸 В четвёртом выпуске поговорили с деврелом. Что за люди делают мероприятия для мобильных разработчиков, как организовать большую конференцию и не сойти с ума, чем ещё занимаются DevRel-команды и зачем простым разработчикам связываться с ними.
Смотрите интервью и подписывайтесь на канал — скоро там выйдет пятый выпуск Mobile Interview.
25 бесплатных часов Xcode Cloud остаются навсегда
На старте Xcode Cloud всем участникам обещали 25 бесплатных часов в месяц на протяжении всего периода обкатки. Случилось замечательное – Apple решили продлить бесплатный доступ бессрочно.
На старте Xcode Cloud всем участникам обещали 25 бесплатных часов в месяц на протяжении всего периода обкатки. Случилось замечательное – Apple решили продлить бесплатный доступ бессрочно.
Apple
25 hours of Xcode Cloud now included with the Apple Developer Program - Latest News - Apple Developer
Xcode Cloud, the continuous integration and delivery service built into Xcode, accelerates the development and delivery of high-quality apps. It brings together cloud-based tools that help you build apps, run automated tests in parallel, deliver apps to testers…
Journaling Suggestion API
Вышел новый Tech Talk от Apple. В нем разбирается новый Journaling Suggestion API, с помощью которого любое приложение сможет получать саджесты от Journal app, который появится в iOS 17.
Вышел новый Tech Talk от Apple. В нем разбирается новый Journaling Suggestion API, с помощью которого любое приложение сможет получать саджесты от Journal app, который появится в iOS 17.
Подробный гайд по SwiftData
Кажется, самый подробный гайд по SwiftData из всех, что я видел: миграции, тестирование, связка с CloudKit, transformable types и куча других аспектов работы с фреймворком.
Кажется, самый подробный гайд по SwiftData из всех, что я видел: миграции, тестирование, связка с CloudKit, transformable types и куча других аспектов работы с фреймворком.