Memory Management & ARC
ARC, strong/weak/unowned, retain cycles, capture lists, wycieki pamięci, profiling
1Czym jest ARC (Automatic Reference Counting) w iOS?
Czym jest ARC (Automatic Reference Counting) w iOS?
Odpowiedź
ARC to automatyczny mechanizm zarządzania pamięcią, który zlicza referencje do obiektu. Kompilator automatycznie wstawia wywołania retain i release, eliminując ręczne zarządzanie. Gdy liczba referencji osiągnie zero, obiekt jest zwalniany. ARC znacznie upraszcza programowanie w iOS, zapobiegając typowym wyciekom pamięci.
2Czym jest strong reference w ARC?
Czym jest strong reference w ARC?
Odpowiedź
Strong reference zwiększa licznik referencji wskazywanego obiektu. Domyślnie wszystkie zmienne są strong reference. Obiekt pozostaje w pamięci, dopóki wskazuje na niego co najmniej jedna strong reference. Używanie zbyt wielu strong reference może tworzyć retain cycles, które uniemożliwiają zwolnienie pamięci.
3Czym jest retain cycle (cykl referencji)?
Czym jest retain cycle (cykl referencji)?
Odpowiedź
Retain cycle występuje, gdy dwa lub więcej obiektów wzajemnie utrzymują strong references. Żaden nie może zostać zwolniony, ponieważ każdy uniemożliwia, by licznik referencji drugiego osiągnął zero. Powoduje to wyciek pamięci. Retain cycles można uniknąć, używając weak lub unowned references w relacjach cyklicznych.
Jaka jest rola deinit w zarządzaniu pamięcią ARC?
Jaka jest różnica między weak a unowned reference?
+19 pytań z rozmów
Inne tematy rekrutacyjne iOS
Podstawy Swift
Podstawy języka Swift
Podstawy UIKit
Cykl życia UIViewController
UserDefaults & Keychain
Cykl życia aplikacji
Auto Layout & Constraints
UITableView & UICollectionView
Podstawy SwiftUI
Zarządzanie stanem w SwiftUI
Nawigacja SwiftUI
Networking & URLSession
Codable i parsowanie JSON
Core Data
Programowanie zorientowane na protokoły
Architektura MVVM
Powiadomienia Push
Testy jednostkowe & XCTest
Testowanie UI
Xcode i system build
Swift Package Manager
Combine Framework
Concurrency & async/await
iOS Design Patterns
Optymalizacja wydajności
Bezpieczeństwo i szyfrowanie
SwiftUI Advanced
Architektura aplikacji iOS
Opanuj iOS na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo