# Programación orientada a protocolos (iOS) > Protocols, extensions, default implementations, PATs, protocol composition, type erasure - 20 preguntas de entrevista - Mid-Level - [Preguntas de entrevista: iOS](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista.md) ## 1. ¿Qué es un protocol en Swift? **Respuesta** Un protocol define un conjunto de propiedades y métodos que un tipo debe implementar. Actúa como un contrato entre el protocol y los tipos conformes. Los protocols permiten definir interfaces sin imponer jerarquías de herencia, favoreciendo la composición y la reutilización del código. ## 2. ¿Qué es la conformidad con un protocol? **Respuesta** La conformidad significa que un tipo (clase, struct o enum) implementa todas las propiedades y métodos requeridos por un protocol. Un tipo puede conformarse a varios protocols simultáneamente. La conformidad establece una relación de tipo independiente de la herencia. ## 3. ¿Qué es una protocol extension? **Respuesta** Una protocol extension permite proporcionar implementaciones por defecto para los métodos del protocol. Todos los tipos conformes reciben estas implementaciones automáticamente, sin tener que redefinirlas. Esto favorece la reutilización de código y reduce el boilerplate de forma significativa. ## 17 preguntas más disponibles - ¿Cómo definir un protocol con una propiedad requerida? - ¿Qué es la herencia de protocols? 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 - [Core Data](https://sharpskill.dev/es/technologies/ios/preguntas-entrevista/core-data.md): 22 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/protocol-oriented-programming