Какие подходы и инструменты Dependency Injection применяешь при разработке приложений с использованием SwiftUI?
В SwiftUI для внедрения зависимостей часто используют несколько подходов и инструментов:
Читать ответПодготовка к интервью
Разбирайте реальные вопросы, сверяйтесь с подробными ответами и готовьтесь по технологиям и компаниям.
Проверьте, насколько резюме подходит выбранной позиции, и получите рекомендации по улучшению.
Каталог
В SwiftUI для внедрения зависимостей часто используют несколько подходов и инструментов:
Читать ответВ Swift объект не освобождает память сразу после вызова деинициализатора (deinit), потому что освобождение памяти управляется системой подсчёта ссылок (ARC — Automatic Reference Counting).
Читать ответПри использовании SwiftUI вместе с навигацией на базе UIKit могут возникнуть следующие сложности:
Читать ответВ RxSwift есть несколько основных типов Subject, которые комбинируют свойства Observable и Observer:
Читать ответВ iOS для реализации компоновки полного макета (full layout) обычно используют Auto Layout с NSLayoutConstraint или более современный SwiftUI.
Читать ответВ Swift замыкания (closures) — это блоки кода, которые могут захватывать и хранить ссылки на переменные из окружающего контекста.
Читать ответВ Objective-C и Swift используются разные подходы к управлению памятью, хотя оба языка поддерживают автоматическое управление памятью.
Читать ответВ контексте объекта CALayer в iOS префикс CA означает Core Animation — это фреймворк, отвечающий за анимацию и визуальное отображение слоев.
Читать ответЯ обращаюсь к официальному сайту swift.org регулярно, особенно в следующих случаях:
Читать ответВ Swift strong и weak ссылки относятся к управлению памятью и помогают избежать циклов удержания (retain cycles).
Читать ответВ iOS Auto Layout left и leading — это разные якоря (anchors) для установки ограничений, но они имеют разное семантическое значение.
Читать ответUIView.animate — это статический метод в iOS, который используется для создания анимаций интерфейсных элементов.
Читать ответ