# Core Data (iOS) > Core Data stack, NSManagedObject, fetch requests, relaciones, migraciones, rendimiento - 22 preguntas de entrevista - Mid-Level - [Preguntas de entrevista: iOS](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista.md) ## 1. ¿Qué es NSPersistentContainer en Core Data? **Respuesta** NSPersistentContainer encapsula todo el stack de Core Data incluyendo NSPersistentStoreCoordinator, NSManagedObjectContext y NSPersistentStore. Simplifica la inicialización gestionando automáticamente las configuraciones y reduce el código boilerplate en comparación con el antiguo enfoque manual. Usar NSPersistentContainer es la práctica recomendada desde iOS 10 para configurar Core Data de forma rápida y thread-safe. ## 2. ¿Cuál es el rol principal de NSManagedObjectContext? **Respuesta** NSManagedObjectContext actúa como un buffer en memoria (scratch pad) entre la aplicación y la capa de almacenamiento persistente. Gestiona las operaciones CRUD, rastrea todos los cambios con undo/redo y coordina los guardados al persistent store. Un context está vinculado a una cola específica y nunca debe compartirse entre threads. Usa perform() para cualquier interacción thread-safe. ## 3. ¿Qué es un NSManagedObject? **Respuesta** NSManagedObject es la clase base para todos los objetos persistentes en Core Data. Representa una instancia única de una entidad definida en el modelo de datos con un objectID único. NSManagedObject gestiona automáticamente las propiedades a través de KVC, las relaciones bidireccionales y el estado del objeto (inserted, updated, deleted) dentro del context. Subclasificar NSManagedObject permite añadir lógica de negocio. ## 19 preguntas más disponibles - ¿Cómo inicializar una NSFetchRequest para recuperar entidades? - ¿Qué objeto es responsable de la comunicación con la capa de almacenamiento? Regístrate gratis: https://sharpskill.dev/es/login ## Otros temas de entrevista iOS - [Fundamentos de Swift](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/swift-basics.md): 25 preguntas, Junior - [Fundamentos del lenguaje Swift](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/swift-language-essentials.md): 15 preguntas, Junior - [Fundamentos de UIKit](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/uikit-fundamentals.md): 18 preguntas, Junior - [Ciclo de vida de UIViewController](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/uiviewcontroller-lifecycle.md): 20 preguntas, Junior - [UserDefaults & Keychain](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/userdefaults-keychain.md): 20 preguntas, Junior - [Ciclo de vida de la aplicación](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/app-lifecycle.md): 20 preguntas, Junior - [Auto Layout & Constraints](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/auto-layout-constraints.md): 24 preguntas, Mid-Level - [UITableView & UICollectionView](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/uitableview-uicollectionview.md): 25 preguntas, Mid-Level - [Fundamentos de SwiftUI](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/swiftui-basics.md): 18 preguntas, Mid-Level - [Gestión de estado en SwiftUI](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/swiftui-state-management.md): 22 preguntas, Mid-Level - [Navegación SwiftUI](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/swiftui-navigation.md): 18 preguntas, Mid-Level - [Networking & URLSession](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/networking-urlsession.md): 20 preguntas, Mid-Level - [Codable y parsing JSON](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/codable-json-parsing.md): 20 preguntas, Mid-Level - [Programación orientada a protocolos](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/protocol-oriented-programming.md): 20 preguntas, Mid-Level - [Arquitectura MVVM](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/mvvm-architecture.md): 20 preguntas, Mid-Level - [Notificaciones Push](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/push-notifications.md): 18 preguntas, Mid-Level - [Pruebas unitarias & XCTest](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/unit-testing-xctest.md): 20 preguntas, Mid-Level - [Pruebas de interfaz de usuario](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/ui-testing.md): 18 preguntas, Mid-Level - [Xcode y sistema de build](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/xcode-build-system.md): 16 preguntas, Mid-Level - [Swift Package Manager](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/swift-package-manager.md): 16 preguntas, Mid-Level - [Memory Management & ARC](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/memory-management-arc.md): 22 preguntas, Senior - [Combine Framework](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/combine-framework.md): 24 preguntas, Senior - [Concurrency & async/await](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/concurrency-async-await.md): 26 preguntas, Senior - [iOS Design Patterns](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/ios-design-patterns.md): 24 preguntas, Senior - [Optimización de rendimiento](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/performance-optimization.md): 22 preguntas, Senior - [Seguridad y cifrado](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/security-encryption.md): 20 preguntas, Senior - [SwiftUI Advanced](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/swiftui-advanced.md): 22 preguntas, Senior - [Arquitectura de aplicaciones iOS](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/ios-app-architecture.md): 22 preguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/core-data