# Programmation orientée protocoles (iOS) > Protocols, extensions, default implementations, PATs, protocol composition, type erasure - 20 questions d'entretien - Confirmé - [Questions d'entretien: iOS](https://sharpskill.dev/fr/technologies/ios/questions-entretien.md) ## 1. Qu'est-ce qu'un protocole en Swift ? **Réponse** Un protocole définit un ensemble de propriétés et méthodes qu'un type doit implémenter. C'est un contrat entre le protocole et les types qui le conforment. Les protocoles permettent de définir des interfaces sans imposer une hiérarchie d'héritage, favorisant la composition et la réutilisabilité du code. ## 2. Qu'est-ce que la conformité à un protocole ? **Réponse** La conformité signifie qu'un type (classe, structure ou énumération) implémente toutes les propriétés et méthodes requises par un protocole. Un type peut se conformer à plusieurs protocoles simultanément. La conformité établit une relation de type sans dépendre de l'héritage. ## 3. Qu'est-ce qu'une extension de protocole ? **Réponse** Une extension de protocole permet de fournir des implémentations par défaut aux méthodes du protocole. Tous les types conformes reçoivent ces implémentations automatiquement, sans devoir les redéfinir. Cela favorise la réutilisation de code et réduit le boilerplate significativement. ## 17 questions supplémentaires disponibles - Comment définir un protocole avec une propriété requise ? - Qu'est-ce que l'héritage de protocole ? S'inscrire gratuitement: https://sharpskill.dev/fr/login ## Autres sujets d'entretien iOS - [Les bases de Swift](https://sharpskill.dev/fr/technologies/ios/questions-entretien/swift-basics.md): 25 questions, Junior - [Essentiels du langage Swift](https://sharpskill.dev/fr/technologies/ios/questions-entretien/swift-language-essentials.md): 15 questions, Junior - [Fondamentaux UIKit](https://sharpskill.dev/fr/technologies/ios/questions-entretien/uikit-fundamentals.md): 18 questions, Junior - [Cycle de vie UIViewController](https://sharpskill.dev/fr/technologies/ios/questions-entretien/uiviewcontroller-lifecycle.md): 20 questions, Junior - [UserDefaults & Keychain](https://sharpskill.dev/fr/technologies/ios/questions-entretien/userdefaults-keychain.md): 20 questions, Junior - [Cycle de vie de l'application](https://sharpskill.dev/fr/technologies/ios/questions-entretien/app-lifecycle.md): 20 questions, Junior - [Auto Layout & Constraints](https://sharpskill.dev/fr/technologies/ios/questions-entretien/auto-layout-constraints.md): 24 questions, Confirmé - [UITableView & UICollectionView](https://sharpskill.dev/fr/technologies/ios/questions-entretien/uitableview-uicollectionview.md): 25 questions, Confirmé - [Les bases de SwiftUI](https://sharpskill.dev/fr/technologies/ios/questions-entretien/swiftui-basics.md): 18 questions, Confirmé - [Gestion d'état SwiftUI](https://sharpskill.dev/fr/technologies/ios/questions-entretien/swiftui-state-management.md): 22 questions, Confirmé - [Navigation SwiftUI](https://sharpskill.dev/fr/technologies/ios/questions-entretien/swiftui-navigation.md): 18 questions, Confirmé - [Networking & URLSession](https://sharpskill.dev/fr/technologies/ios/questions-entretien/networking-urlsession.md): 20 questions, Confirmé - [Codable & Parsing JSON](https://sharpskill.dev/fr/technologies/ios/questions-entretien/codable-json-parsing.md): 20 questions, Confirmé - [Core Data](https://sharpskill.dev/fr/technologies/ios/questions-entretien/core-data.md): 22 questions, Confirmé - [Architecture MVVM](https://sharpskill.dev/fr/technologies/ios/questions-entretien/mvvm-architecture.md): 20 questions, Confirmé - [Notifications Push](https://sharpskill.dev/fr/technologies/ios/questions-entretien/push-notifications.md): 18 questions, Confirmé - [Tests unitaires & XCTest](https://sharpskill.dev/fr/technologies/ios/questions-entretien/unit-testing-xctest.md): 20 questions, Confirmé - [Tests d'interface utilisateur](https://sharpskill.dev/fr/technologies/ios/questions-entretien/ui-testing.md): 18 questions, Confirmé - [Xcode & Système de build](https://sharpskill.dev/fr/technologies/ios/questions-entretien/xcode-build-system.md): 16 questions, Confirmé - [Swift Package Manager](https://sharpskill.dev/fr/technologies/ios/questions-entretien/swift-package-manager.md): 16 questions, Confirmé - [Memory Management & ARC](https://sharpskill.dev/fr/technologies/ios/questions-entretien/memory-management-arc.md): 22 questions, Senior - [Combine Framework](https://sharpskill.dev/fr/technologies/ios/questions-entretien/combine-framework.md): 24 questions, Senior - [Concurrency & async/await](https://sharpskill.dev/fr/technologies/ios/questions-entretien/concurrency-async-await.md): 26 questions, Senior - [iOS Design Patterns](https://sharpskill.dev/fr/technologies/ios/questions-entretien/ios-design-patterns.md): 24 questions, Senior - [Performance Optimization](https://sharpskill.dev/fr/technologies/ios/questions-entretien/performance-optimization.md): 22 questions, Senior - [Security & Encryption](https://sharpskill.dev/fr/technologies/ios/questions-entretien/security-encryption.md): 20 questions, Senior - [SwiftUI Advanced](https://sharpskill.dev/fr/technologies/ios/questions-entretien/swiftui-advanced.md): 22 questions, Senior - [iOS Application Architecture](https://sharpskill.dev/fr/technologies/ios/questions-entretien/ios-app-architecture.md): 22 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/fr/technologies/ios/questions-entretien/protocol-oriented-programming