iOS Broadcast
3.31K subscribers
1.7K photos
84 videos
973 links
Подборка новостей и статей для iOS разработчиков.

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @android_broadcast_bot
Download Telegram
Live coding интервью для iOS разработчиков (11 мин)

Разбор наиболее популярных задач, которые вы можете встретить на live coding этапе. Время, затраченное на решение таких задач, не должно превышать 30 минут, а их количество, обычно, ограничивается 1–2 задачами за одно интервью. В статье задачи на следующие темы:
👉 Thread-safe class
👉 DispatchGroup
👉 High-order functions
👉 Type erasure
👉 Any and Some

#interview
👍15👎1
Building a Neural Network from Scratch in SwiftUI

Пример, того как просто интегрировать CoreML в iOS приложение 🤖
Добавляем SwiftUI view (скрин 1), где будем размещать изображение и предсказание на его основе.
Затем добавляем CoreML модель через File > New > File > “Core ML Model” (скрин 2).

#coreML
🤩3👍1👎1
NSPredicate: старый API с новыми сюрпризами

Выводы из статьи:
👉 В Swift результат nil != nonNilValue является истинным.
👉 NSPredicate(format: "%K != %@", stringKey, nonNilValue), будет соответствовать объектам, у которых свойство, соответствующее stringKey, равно nil
👉 При извлечении из хранилища CoreData SQLite предикат выше не будет совпадать с объектами, у которых свойство, соответствующее stringKey, равно nil. Это происходит потому, что Core Data напрямую мапирует команду с SQL, а SQL определяет, что не существует значения, равного или неравного null
👉 Это можно обойти так: NSPredicate(format: "%K != %@ OR %K == NIL", stringKey, nonNilValue, stringKey)
👉 Урок: Проверяйте все и всегда

#swift
👍7👎1
Adding a stretchable header to a SwiftUI ScrollView

Статья о том, как реализовать растягивающийся header в приложении.
Реализация в GitHub

#компоненты
👍9👎1
Топ вопросов на Junior собеседованиях

Вот примеры вопросов из статьи на позицию Junior iOS Dev:
👉 Что такое Value Type и Reference Type?
👉 Для любой ли структуры работает copy-on-write (COW)?
👉 Почему в каких-то моментах лучше использовать Value Type, а в каких-то Reference Type?
👉 Можно ли наследовать со структур?
Что такое утечка памяти и почему она образуется?
👉 Что такое Automatic Reference Counting (ARC)?
При каких условиях счетчик уменьшается?
👉 Если на объект есть только 1 слабая ссылка, создастся он или нет?
👉 Расскажите про жизненный цикл View controllers?
👉 В каком методе происходит подсчет Constraints?

#interview
👍8👎1
Forwarded from Kotlin Multiplatform Broadcast (Кирилл Розов)
📺 Compose iOS. Как это работает #0 (1 час)

Мы в Тинькофф запустили новое шоу - "Как это работает". В пилотном выпуски позвали Лешу Гладкова, автора Mobile Developer, чтобы он показал нам свой опыт с Compose iOS. Увидите код и работы приложения на iOS симуляторе, а также боли запуска )
👍6👎1
An Unexpected Behavior of Subclasses in Swift

Название статьи подсказывает, но посмотрите на код со скрина и подумайте, что будет выведено
Father: Odin
Son: Thor
Son: Odin
Может ли такое произойти в реальном проекте? Да, например со ViewController'ами.
Когда мы переопределяем метод с дефолтным значением, безопаснее не менять эти дефолтные значения. Причина заключается в том, что дефолтные значения привязаны к статическому типу и не вычисляются динамически.

#swift
😱14👍5👎1
Make it for me: Factory pattern and Swift

Используйте фабричный метод, если вы:
👉 заранее не знаете точных типов и зависимостей объектов, с которыми должен работать ваш код
👉 хотите предоставить пользователям вашей библиотеки способ расширения ее внутренних компонентов
👉 хотите сэкономить системные ресурсы за счет повторного использования существующих объектов, а не каждый раз пересобирать их

#patterns
👍5👎1
Вышло ядро Linux 6.2 с поддержкой Apple M1

Благодаря добавлению поддержки чипов Apple M1 Pro, M1 Max и M1 Ultra, владельцы новых Mac могут рассчитывать на запуск Linux на своих машинах с процессором M1. Конечно, на данный момент все экспериментально, но это ненадолго.
Кроме поддержки M1, ядро Linux 6.2 включает множество функций, созданных такими компаниями, как Intel, AMD, Google и Red Hat

#os
4🤩4👍1👎1
XCode Tips: Collections of tips for Xcode

Подборка советов и лайфхаков для разработки

#лайфхаки
👍8👎1
72% всех iPhone работают на iOS 16

Если взять вообще все смартфоны Apple, то 72% всех iPhone работают под управлением iOS 16, а 20% — на iOS 15. Около 8% iPhone работают под управлением более ранних версий.
Принятие iOS 16 опережает iOS 15 на основе данных, опубликованных компанией в январе 2022 года. Тогда около 72% моделей iPhone, выпущенных за последние четыре года, работали под управлением iOS 15, и 63% вообще всех iPhone работали на пятнадцатой версии.

#ios
👍8👎1
Introducing EditKit Pro

EditKit Pro встраивается в Xcode и добавляет:
👉 генерацию комментариев MARK
👉 Beautify JSON, например, для моков
👉 генерацию Codable структур из JSON
👉 разбиение массива или длинной строки на несколько строк
👉 сортировку по алфавиту для импортов и других строк кода
Это лишь некоторые фичи EditKit Pro
Ссылка на скачивание

#tools
👍10👎1
7 открытых iOS-проектов, которые помогут изучить SwiftUI

👉 Clean Architecture for SwiftUI + Combine
👉 The OldOS Project - воссоздает полнофункциональную версию iOS 4 в SwiftUI
👉 SwiftUICraft - Minecraft, но сделанный с помощью SwiftUI
👉 Velik - приложение для отслеживания поездок, созданное на SwiftUI с использованием Combine и CoreData
👉 Open Sesame - менеджер паролей с множеством функций
👉 Swiftui 2048
👉 Expense Tracker - приложение для отслеживания расходов, созданное с помощью Core Data и SwiftUI

#swiftUI
👍8👎1