iOS

Memory Management & ARC

ARC, strong/weak/unowned, retain cycles, capture lists, витоки пам'яті, profiling

22 питань зі співбесід·
Senior
1

Що таке ARC (Automatic Reference Counting) в iOS?

Відповідь

ARC — це автоматичний механізм керування пам'яттю, який підраховує посилання на об'єкт. Компілятор автоматично вставляє виклики retain і release, усуваючи потребу в ручному керуванні. Коли лічильник посилань досягає нуля, об'єкт звільняється. ARC значно спрощує програмування для iOS, запобігаючи поширеним витокам пам'яті.

2

Що таке strong reference в ARC?

Відповідь

Strong reference збільшує лічильник посилань об'єкта, на який вказує. За замовчуванням усі змінні є strong reference. Об'єкт залишається в пам'яті, доки хоча б одне strong reference вказує на нього. Використання надто багатьох strong reference може створити retain cycles, які перешкоджають звільненню.

3

Що таке retain cycle (цикл утримання)?

Відповідь

Retain cycle виникає, коли два або більше об'єктів утримують взаємні strong reference. Жоден не може бути звільнений, оскільки кожен перешкоджає лічильнику посилань іншого досягти нуля. Це створює витік пам'яті. Retain cycles запобігають, використовуючи weak або unowned reference у циклічних зв'язках.

4

Яку роль відіграє deinit у керуванні пам'яттю ARC?

5

Яка різниця між weak і unowned reference?

+19 питань зі співбесід

Інші теми співбесід iOS

Основи Swift

Junior
25 запитань

Основи мови Swift

Junior
15 запитань

Основи UIKit

Junior
18 запитань

Життєвий цикл UIViewController

Junior
20 запитань

UserDefaults & Keychain

Junior
20 запитань

Життєвий цикл застосунку

Junior
20 запитань

Auto Layout & Constraints

Mid-Level
24 запитань

UITableView & UICollectionView

Mid-Level
25 запитань

Основи SwiftUI

Mid-Level
18 запитань

Керування станом у SwiftUI

Mid-Level
22 запитань

Навігація SwiftUI

Mid-Level
18 запитань

Networking & URLSession

Mid-Level
20 запитань

Codable та парсинг JSON

Mid-Level
20 запитань

Core Data

Mid-Level
22 запитань

Протоколо-орієнтоване програмування

Mid-Level
20 запитань

Архітектура MVVM

Mid-Level
20 запитань

Push-сповіщення

Mid-Level
18 запитань

Модульне тестування та XCTest

Mid-Level
20 запитань

Тестування інтерфейсу користувача

Mid-Level
18 запитань

Xcode і система збірки

Mid-Level
16 запитань

Swift Package Manager

Mid-Level
16 запитань

Combine Framework

Senior
24 запитань

Concurrency & async/await

Senior
26 запитань

iOS Design Patterns

Senior
24 запитань

Оптимізація продуктивності

Senior
22 запитань

Безпека та шифрування

Senior
20 запитань

SwiftUI Advanced

Senior
22 запитань

Архітектура застосунків iOS

Senior
22 запитань

Опануй iOS для наступної співбесіди

Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.

Почни безкоштовно