# Core Data (iOS) > Core Data stack, NSManagedObject, fetch request, relazioni, migrazioni, performance - 22 domande da colloquio - Mid-Level - [Domande da colloquio: iOS](https://sharpskill.dev/it/technologies/ios/domande-colloquio.md) ## 1. Cos'è NSPersistentContainer in Core Data? **Risposta** NSPersistentContainer incapsula l'intero stack di Core Data inclusi NSPersistentStoreCoordinator, NSManagedObjectContext e NSPersistentStore. Semplifica l'inizializzazione gestendo automaticamente le configurazioni e riduce il codice boilerplate rispetto al vecchio approccio manuale. Usare NSPersistentContainer è la pratica raccomandata da iOS 10 per configurare Core Data in modo rapido e thread-safe. ## 2. Qual è il ruolo principale di NSManagedObjectContext? **Risposta** NSManagedObjectContext funge da scratch pad in memoria tra l'applicazione e il livello di archiviazione persistente. Gestisce le operazioni CRUD, traccia tutte le modifiche con undo/redo e coordina i salvataggi sul persistent store. Un context è legato a una queue specifica e non deve mai essere condiviso tra thread. Usa perform() per qualsiasi interazione thread-safe. ## 3. Cos'è un NSManagedObject? **Risposta** NSManagedObject è la classe base per tutti gli oggetti persistenti in Core Data. Rappresenta un'istanza univoca di un'entity definita nel modello dati con un objectID univoco. NSManagedObject gestisce automaticamente le proprietà tramite KVC, le relazioni bidirezionali e lo stato dell'oggetto (inserted, updated, deleted) all'interno del context. Creare una sottoclasse di NSManagedObject consente di aggiungere logica di business. ## Altre 19 domande disponibili - Come inizializzare una NSFetchRequest per recuperare le entity? - Quale oggetto è responsabile della comunicazione con il livello di archiviazione? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio iOS - [Fondamenti di Swift](https://sharpskill.dev/it/technologies/ios/domande-colloquio/swift-basics.md): 25 domande, Junior - [Fondamenti del linguaggio Swift](https://sharpskill.dev/it/technologies/ios/domande-colloquio/swift-language-essentials.md): 15 domande, Junior - [Fondamenti di UIKit](https://sharpskill.dev/it/technologies/ios/domande-colloquio/uikit-fundamentals.md): 18 domande, Junior - [Ciclo di vita di UIViewController](https://sharpskill.dev/it/technologies/ios/domande-colloquio/uiviewcontroller-lifecycle.md): 20 domande, Junior - [UserDefaults & Keychain](https://sharpskill.dev/it/technologies/ios/domande-colloquio/userdefaults-keychain.md): 20 domande, Junior - [Ciclo di vita dell'applicazione](https://sharpskill.dev/it/technologies/ios/domande-colloquio/app-lifecycle.md): 20 domande, Junior - [Auto Layout & Constraints](https://sharpskill.dev/it/technologies/ios/domande-colloquio/auto-layout-constraints.md): 24 domande, Mid-Level - [UITableView & UICollectionView](https://sharpskill.dev/it/technologies/ios/domande-colloquio/uitableview-uicollectionview.md): 25 domande, Mid-Level - [Fondamenti di SwiftUI](https://sharpskill.dev/it/technologies/ios/domande-colloquio/swiftui-basics.md): 18 domande, Mid-Level - [Gestione dello stato in SwiftUI](https://sharpskill.dev/it/technologies/ios/domande-colloquio/swiftui-state-management.md): 22 domande, Mid-Level - [Navigazione SwiftUI](https://sharpskill.dev/it/technologies/ios/domande-colloquio/swiftui-navigation.md): 18 domande, Mid-Level - [Networking & URLSession](https://sharpskill.dev/it/technologies/ios/domande-colloquio/networking-urlsession.md): 20 domande, Mid-Level - [Codable e parsing JSON](https://sharpskill.dev/it/technologies/ios/domande-colloquio/codable-json-parsing.md): 20 domande, Mid-Level - [Programmazione orientata ai protocolli](https://sharpskill.dev/it/technologies/ios/domande-colloquio/protocol-oriented-programming.md): 20 domande, Mid-Level - [Architettura MVVM](https://sharpskill.dev/it/technologies/ios/domande-colloquio/mvvm-architecture.md): 20 domande, Mid-Level - [Notifiche Push](https://sharpskill.dev/it/technologies/ios/domande-colloquio/push-notifications.md): 18 domande, Mid-Level - [Test unitari & XCTest](https://sharpskill.dev/it/technologies/ios/domande-colloquio/unit-testing-xctest.md): 20 domande, Mid-Level - [Test dell'interfaccia utente](https://sharpskill.dev/it/technologies/ios/domande-colloquio/ui-testing.md): 18 domande, Mid-Level - [Xcode e sistema di build](https://sharpskill.dev/it/technologies/ios/domande-colloquio/xcode-build-system.md): 16 domande, Mid-Level - [Swift Package Manager](https://sharpskill.dev/it/technologies/ios/domande-colloquio/swift-package-manager.md): 16 domande, Mid-Level - [Memory Management & ARC](https://sharpskill.dev/it/technologies/ios/domande-colloquio/memory-management-arc.md): 22 domande, Senior - [Combine Framework](https://sharpskill.dev/it/technologies/ios/domande-colloquio/combine-framework.md): 24 domande, Senior - [Concurrency & async/await](https://sharpskill.dev/it/technologies/ios/domande-colloquio/concurrency-async-await.md): 26 domande, Senior - [iOS Design Patterns](https://sharpskill.dev/it/technologies/ios/domande-colloquio/ios-design-patterns.md): 24 domande, Senior - [Ottimizzazione delle prestazioni](https://sharpskill.dev/it/technologies/ios/domande-colloquio/performance-optimization.md): 22 domande, Senior - [Sicurezza e crittografia](https://sharpskill.dev/it/technologies/ios/domande-colloquio/security-encryption.md): 20 domande, Senior - [SwiftUI Advanced](https://sharpskill.dev/it/technologies/ios/domande-colloquio/swiftui-advanced.md): 22 domande, Senior - [Architettura delle applicazioni iOS](https://sharpskill.dev/it/technologies/ios/domande-colloquio/ios-app-architecture.md): 22 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/ios/domande-colloquio/core-data