22 января пройдёт онлайн iOS-митап от Альфа-Банка. Подробности и регистрация здесь: https://digital.alfabank.ru/events/mobile-talks
Реализация обновления прогресса при загрузке файлов через URLSession при помощи Combine.
https://www.swiftbysundell.com/articles/http-post-and-file-upload-requests-using-urlsession/
https://www.swiftbysundell.com/articles/http-post-and-file-upload-requests-using-urlsession/
Swift by Sundell
Performing POST and file upload requests using URLSession | Swift by Sundell
How URLSession can be used to perform POST requests and file uploads without any third party libraries.
Гайд по кастомизации SF символов. Судя по найденному багу их поддержка в UIKit не была приоритетной задачей Apple.
https://sarunw.com/posts/how-to-change-color-of-sf-symbols/
https://sarunw.com/posts/how-to-change-color-of-sf-symbols/
Sarunw
How to change the color of SF Symbols | Sarunw
SF symbols are icon sets that Apple design to work with their system font. Learn how to change its color and how to show them in multicolor style.
Пример, как можно обернуть плюсовую библиотеку в Swift. Отнюдь не является общим кейсом, потому что портирование отдельных фичей C++, в частности темплейтов не так просто сделать.
https://medium.com/better-programming/how-to-create-a-swift-package-from-a-c-library-fb5cd606220f
https://medium.com/better-programming/how-to-create-a-swift-package-from-a-c-library-fb5cd606220f
Medium
How to Create a Swift Package From a C++ Library
Learn how Swift and C++ can talk to each other
Структурная конкурентность - разбор на практике, что же нам предлагается прямо сейчас. Async, await, cancellation, Task. Делаем ставки, когда все это окажется в проде и как повлияет на нативные API, например в SwiftUI или даже UIKit и другие.
https://desiatov.com/swift-structured-concurrency-introduction/
https://desiatov.com/swift-structured-concurrency-introduction/
Desiatov
Introduction to structured concurrency in Swift: continuations, tasks, and cancellation | Max Desiatov
Concurrency in Swift is a big and complex topic, here we look into structured concurrency and its core concepts, such as continuations, tasks, and cancellation in a practical example.
Когда ученик превзошел учителя или напоминание о том, как ARC появился благодаря неудобствам MRC.
https://habr.com/ru/post/536192/
https://habr.com/ru/post/536192/
Хабр
Memory Management: ARC vs MRC в iOS
Как работает Automatic Reference Counter в iOS? На самом деле эту тему мне было легче понять после того, как я познакомился с Manual Reference Counter. Это очень...
Кастомные стратегии декодинга. Расширяем функционал JSONDecoder за пределы snake case и camel case.
https://www.enekoalonso.com/articles/issue-23
https://www.enekoalonso.com/articles/issue-23
enekoalonso.com
Dealing with camelCase, snake_case, PascalCase, kebab-case and other custom JSON property names in Swift
Swift’s Codable protocol (together with Encodable and Decodable) was introduced in Xcode 9 with Swift 4. This changed for good how we encode and decode JSON....
Шпаргалка по нативным способам поиска подстроки и символов в Swift. Если не знаете про localizedStandardContains, то определенно стоит посмотреть.
https://sarunw.com/posts/different-ways-to-check-if-string-contains-another-string-in-swift/
https://sarunw.com/posts/different-ways-to-check-if-string-contains-another-string-in-swift/
Sarunw
Different ways to check if a string contains another string in Swift | Sarunw
Learn how to check if a string contains another string, numbers, uppercased/lowercased string, or special characters.
Почему Яндекс.Такси (или Яндекс Go) больше не находится через Spotlight по запросу “такси” и как можно этого избежать. Проблемы две и статья не отвечает какая из них приводит к плачевному результату. Но без исходников это скорей всего и не возможно.
https://habr.com/ru/post/536198/
https://habr.com/ru/post/536198/
Хабр
Почему я не могу найти Яндекс.Такси через системный поиск на iPhone?
Привет, Хабр!В последнее время Яндекс изо всех сил пытается испортить свои мобильные приложения, превращая их в «суперапп», будь это слово неладно. И одно из дву...
Почему стоит избегать использования AnyView, когда это возможно, и как это делать в некоторых часто встречающихся случаях.
https://www.swiftbysundell.com/articles/avoiding-anyview-in-swiftui/
https://www.swiftbysundell.com/articles/avoiding-anyview-in-swiftui/
Swift by Sundell
Avoiding SwiftUI’s AnyView | Swift by Sundell
How SwiftUI’s AnyView type can often be avoided, and why it might be a good idea to do so.
Все мы любим аналитику в AppMetrica, и есть за что — это мощная и удобная платформа. Недавно там появился новый отчет — «Воронки» 🌪. Это инструмент-помощник в анализе пользовательского поведения и повышении конверсии.
Работа с отчетом интуитивно понятна: описываем логику и отдельные шаги в базе событий, выбираем количество сессий, сегментируем аудиторию — группируем пользователей по параметрам устройств, географии и другим показателям. На выходе получаем интерактивный график и таблицы по срезам аудитории.
Как это работает, для чего нужны воронки и что нужно учесть при их создании — читайте в материале команды разработчиков.
Работа с отчетом интуитивно понятна: описываем логику и отдельные шаги в базе событий, выбираем количество сессий, сегментируем аудиторию — группируем пользователей по параметрам устройств, географии и другим показателям. На выходе получаем интерактивный график и таблицы по срезам аудитории.
Как это работает, для чего нужны воронки и что нужно учесть при их создании — читайте в материале команды разработчиков.
Блог Яндекса
Воронки: подробный анализ конверсии в вашем приложении
Отчет Воронки в AppMetrica: подробный анализ конверсии в вашем приложении
Как настраивать работу с двумя архитектурами процессоров в Kotlin Multiplatform.
https://habr.com/ru/post/536480/
https://habr.com/ru/post/536480/
Хабр
Варианты настройки iosMain sourceSet'а в Kotlin Multiplatform Mobile
При использовании Kotlin Multiplatform Mobile сталкиваешься с непривычной особенностью — iOS код рассматривается компилятором в нескольких вариантах: iosArm64 и iosX64, а также iosArm32 (для...
Фокусы с SwiftUI продолжаются. На этот раз для определения обрезается текст или нет.
https://fivestars.blog/swiftui/trucated-text.html
https://fivestars.blog/swiftui/trucated-text.html
FIVE STARS
How to check if Text is truncated in SwiftUI? | FIVE STARS
Exploring iOS, SwiftUI & much more.
Сравнение подходов к UI с использованием AutoLayout и альтернатив на фреймах. Расшифровка с круглого стола при участии Юлы и DeliveryClub.
https://habr.com/ru/company/oleg-bunin/blog/528328/
https://habr.com/ru/company/oleg-bunin/blog/528328/
Хабр
Есть ли жизнь без Auto Layout?
Технология Auto Layout появилась в 2012 году, но споры и дебаты о том, как правильно верстать интерфейс, не утихают до сих пор. Использовать ли Auto Layout интерфейс в билдере или в коде? Верстать без...
Еще больше про Dynamic Type в связке с Accessibility. На этот раз речь идет о полной кастомизации в зависимости от категории размеров.
https://otbivnoe.ru/2021/01/22/On-A-Way-To-Great-Accessibility-With-Dynamic-Type.html
https://otbivnoe.ru/2021/01/22/On-A-Way-To-Great-Accessibility-With-Dynamic-Type.html
Лонгрид на тему потока данных в SwiftUI. Что и в каком случае использовать: State, ObservedObject, обычную константу или что-то другое.
https://troz.net/post/2019/swiftui-data-flow/
https://troz.net/post/2019/swiftui-data-flow/
TrozWare
SwiftUI Data Flow - TrozWare
Crazy Mac lady. Mac author & developer. Lover of Apple computers and devices. Swift & SwiftUI enthusiast. Unofficial Mac app dev evangelist
Как iOS-разработчику вырасти до Middle+ уровня?
12 февраля - карьера для iOS-разработчика
На вебинаре Ексей Пантелеев (Head Of Mobile в Новых облачных технологиях):
- сделает обзор вакансий
- поговорит о требованиях к кандидатам
- ответит на карьерные вопросы начинающих специалистов
- представит программу онлайн-курса «iOS Developer. Professional».
Вы узнаете, какие навыки ждут от специалистов работодатели и как организована практика. До 27 января включительно курс доступен со скидкой 25%🎁
Перед встречей пройдите вступительный тест, чтобы задать свои вопросы преподавателю: https://otus.pw/4o7t/
12 февраля - карьера для iOS-разработчика
На вебинаре Ексей Пантелеев (Head Of Mobile в Новых облачных технологиях):
- сделает обзор вакансий
- поговорит о требованиях к кандидатам
- ответит на карьерные вопросы начинающих специалистов
- представит программу онлайн-курса «iOS Developer. Professional».
Вы узнаете, какие навыки ждут от специалистов работодатели и как организована практика. До 27 января включительно курс доступен со скидкой 25%🎁
Перед встречей пройдите вступительный тест, чтобы задать свои вопросы преподавателю: https://otus.pw/4o7t/
otus.ru
Разработчик iOS: практическое применение Swift 5, работа в Xсode и Git
Курс Разработчик iOS в OTUS с возможностью трудоустройства
Экстравагантный способ использования SwiftUI для создания иконок приложения.
https://www.enekoalonso.com/articles/creating-ios-application-icons-with-swiftui
https://www.enekoalonso.com/articles/creating-ios-application-icons-with-swiftui
enekoalonso.com
Creating iOS Application Icons with SwiftUI
SwiftUI was introduced to the world at WWDC in June 2019. While the main goal for SwiftUI is to build rich user interfaces on iOS and other Apple platforms, ...
Вероятно в этом году после релиза очередной версии SwiftUI на него перейдет еще больше разработчиков. Если вы планируете быть в их числе, то вот пример, как переходить с RxSwift.
https://benoitpasquier.com/migrating-mvvm-uikit-rxswift-to-combine/
https://benoitpasquier.com/migrating-mvvm-uikit-rxswift-to-combine/
Benoit Pasquier
Migrating MVVM architecture from RxSwift to Combine
It’s been almost two years that Combine has been introduced to the Apple developer community. As many developer, you want to migrate your codebase to it. You don’t want to be left behind but you’re not sure where to start, maybe not sure if you want to jump…
Этого чувака не остановить. Он уже копию лейаута страницы из Instagram сделал на Compositional Layout.
https://nemecek.be/blog/72/building-instagram-profile-screen-with-compositional-layout
https://nemecek.be/blog/72/building-instagram-profile-screen-with-compositional-layout
nemecek.be
Building Instagram profile screen with Compositional Layout
Let's build the profile page with avatar, followers count, highlights and photos.