Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck
9.73K subscribers
1.54K photos
73 videos
52 files
4.31K links
Все самое полезное для мобильного разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/b60af5a4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a4adec1b17b35b6c0d8389
Download Telegram
🍏 Что такое перечисления (enumerations) в Swift?

Перечисление (enumeration)- это группа связанных значений.

Перечисления позволяют писать безопасный для типов код.

enum Direction {
case North
case East
case South
case West
}


Теперь в своем коде вы можете вызвать, например, Direction.North, вместо того чтобы использовать мистическую строку «North» (которая легко может быть неправильно написана и вызвать раздражающие ошибки).

Больше информации о перечислениях можно прочесть в этой статье.

#swift
🥱51
🔧 Строим архитектуру для SwiftUI

SwiftUI фундаментально отличается от UIKit, поэтому он требует своего подхода к архитектуре. Известные паттерны, такие как MVP, MVVM и другие, в чистом виде не адаптированы под особенности SwiftUI.

В статье автор рассказывает о создании собственной архитектуры для разработки на SwiftUI.

👉 Читать статью

#новость #ios #swift
😁41🥱1
🍏 typealias в Swift

Typealias, как следует из названия, является псевдонимом для существующего типа данных.

Вы можете создать его следующим образом:

typealias Weight = Float


Теперь вы можете использовать Weight вместо Float:

let mass1: Weight = 150.0
let mass2: Weight = 220.0
let total: Weight = mass1 + mass2


#swift
🥱53
📝 Вызов защищённого API из iOS-приложения на Swift

Как Swift‑разработчику, в какой‑то момент вам, скорее всего, понадобится добавить в своё приложение аутентификацию пользователей или, как её ещё называют, логин и логаут.

В этой статье автор показывает, как настроить Auth0 для получения токена доступа OAuth 2.0, который позволит вам безопасно, надёжно и от имени пользователя вызывать защищённый API из вашего приложения.

👉 Читать статью

#новость #ios #swift
🔥2
🌗 Темы в современных iOS-приложениях с UITraitCollection

Совсем недавно (с iOS 17) Apple представила удобный способ обработки смены тем в приложениях для iOS. Раньше это было довольно сложно, но с появлением UITraitAppearance стало проще.

Эта статья представляет собой законченное описание того, как добавить тематическое оформление в реальное приложение.

👉 Читать статью

#новость #ios #swift
🥰3
🎨 Как использовать смешивание цветов в SwiftUI

В последнем обновлении SwiftUI Apple представила новую функцию под названием «смешивание цветов». Эта функция открывает новые творческие возможности для разработчиков, позволяя выполнять различные задачи с цветами.

Автор статьи рассматривает смешивание цветов в SwiftUI и его потенциальное применение.

👉 Читать статью

#новость #ios #swift
🤩2
⬇️ Как снизить потребление оперативной памяти в iOS-приложении

Чтобы избежать перегрузки системы и крашей приложения, iOS-команда AliExpress решила разработать инструмент для мониторинга памяти.

Его задача — отслеживать потребление ресурсов на этапе тестирования и предупреждать разработчиков о потенциальных перегрузках, чтобы проблемный код не попал к пользователям.

Автор статьи рассказывает, как минимизировать краши, связанные с нехваткой оперативной памяти на мобильных устройствах.

👉 Читать статью

#новость #ios #swift
2
🍏 Что такое опциональное связывание (optional binding)

Опциональное связывание проверяет, содержит ли опция значение или нет. Если опция имеет значение, опциональное связывание делает это значение временно доступным:

Например, следующий код проверяет, является ли имя nil или нет. Если нет, то создается временная константа realName и ей присваивается значение name.

var name: String? = «Charles»
if let realName = name {
print (realName)
}


Вывод:

Charles


#swift
1
🍏 Что делает init() в Swift

Метод init() используется для инициализации экземпляра.

Инициализация означает подготовку экземпляра (класса, структуры или перечисления) к использованию.

В процессе инициализации вы устанавливаете начальные значения для каждого свойства экземпляра. Вы также можете выполнить некоторые другие подготовительные действия, прежде чем экземпляр будет готов к использованию.

#swift
🥰6🥱5😁2
📃 Sheet с автоматическим подсчётом высоты и поддержкой iOS 15

В этой статье автор рассказывает о том, как создать нативный Sheet, который автоматически подсчитывает свою высоту в зависимости от контента (SwiftUI View).

Основная задача заключалась в реализации решения с минимальным количеством костылей и поддержкой iOS 15. Готовых решений с аналогичной функциональностью не нашлось, поэтому автор разработал собственное решение.

👉 Читать статью

#новость #ios #swift
1
🍏 Что нас ждёт в Swift 6

Как вы знаете, прошлой осенью зарелизился Swift 6, а вместе c ним появились и строгие проверки для защиты от датарейсов, связанные со Swift Concurrency. В Swift 5 такие проверки включались при помощи флага -strict-concurrency=complete, но, по заявлениям разработчиков Swift, были слишком консервативными.

В этой статье автор разбирается с основными изменениями в каждом пропозале и делится своими заметками, тем, что показалось самым важным или интересным.

👉 Читать статью

#новость #ios #swift
🥰5