# iOS Application Architecture (iOS) > Clean Architecture, VIPER, modular architecture, Dependency Injection, TCA, unidirectional flow - 22 questions d'entretien - Senior - [Questions d'entretien: iOS](https://sharpskill.dev/fr/technologies/ios/questions-entretien.md) ## 1. Quelles sont les trois couches principales de Clean Architecture ? **Réponse** Clean Architecture organise le code en couches concentriques : Entities (logique métier), Use Cases (règles applicatives), et Frameworks/Drivers (détails d'implémentation). La dépendance doit toujours pointer vers l'intérieur, jamais l'inverse. Cette organisation garantit l'indépendance des frameworks et la testabilité du code métier. ## 2. Qu'est-ce que la Dependency Rule en Clean Architecture ? **Réponse** La Dependency Rule stipule que les dépendances de code source doivent uniquement pointer vers l'intérieur. Le code des couches externes ne peut jamais être référencé par le code des couches internes. Cela préserve l'indépendance des règles métier vis-à-vis des détails techniques et des frameworks externes. ## 3. Quel est le rôle d'une Use Case dans Clean Architecture ? **Réponse** Une Use Case encapsule les règles spécifiques à l'application, indépendantes des frameworks. Elle orchestre les Entities, valide les requêtes et produit les réponses. Chaque Use Case représente une action spécifique de l'utilisateur et maintient la logique métier isolée de la présentation et de la persistance. ## 19 questions supplémentaires disponibles - Comment tester une Use Case en Clean Architecture ? - Qu'est-ce que le concept d'Entities dans Clean Architecture ? 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é - [Programmation orientée protocoles](https://sharpskill.dev/fr/technologies/ios/questions-entretien/protocol-oriented-programming.md): 20 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 --- 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/ios-app-architecture