Questions et reponses d'entretien
Questions et reponses niveau debutant / jeunes diplomes
Question 1. What is Swift?
Swift is a programming language developed by Apple for iOS, macOS, watchOS, tvOS, and Linux applications.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 2. Explain optionals in Swift.
Optionals are a type in Swift that represents either a wrapped value or nil, indicating the absence of a value.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 3. What is the difference between 'let' and 'var' in Swift?
'let' is used to declare constants, and 'var' is used to declare variables.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 4. What is a closure in Swift?
A closure is a self-contained block of functionality that can be passed around and used in your code.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 5. What are property observers in Swift?
Property observers are used to observe and respond to changes in a property's value, providing a way to execute code before or after the value changes.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 6. What is the purpose of the 'static' keyword in Swift?
The 'static' keyword in Swift is used to define type-level properties and methods that are associated with the type itself, rather than an instance of the type.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 7. What is the Swift Package Manager (SPM) used for?
Swift Package Manager is a tool for managing the distribution of Swift code as source or binary packages.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 8. What is the purpose of the 'DispatchQueue' class in Swift?
'DispatchQueue' is used for managing the execution of tasks serially or concurrently in a multithreaded environment.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 9. What is the purpose of the 'self' keyword in Swift?
'self' is used to refer to the instance of the current type, and it's often required to distinguish between instance variables and parameters with the same name.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 10. What is the 'lazy' keyword used for in Swift?
'lazy' is used to delay the initialization of a property until it's accessed for the first time.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 11. Explain the difference between 'frame' and 'bounds' in UIKit.
'frame' represents a view's location and size in its superview's coordinate system, while 'bounds' represents a view's location and size in its own coordinate system.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 12. What is the purpose of the 'throws' keyword in Swift?
'throws' is used to indicate that a function can potentially throw an error, and it must be marked with 'try' when called.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 13. Explain the role of the 'UIApplicationDelegate' in a Swift app.
The 'UIApplicationDelegate' is a protocol in Swift that defines methods for handling app lifecycle events, such as app launch, termination, and background execution.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 14. What is a typealias in Swift, and when would you use it?
A typealias is used to create a named alias for an existing type. It is useful for making code more readable and for simplifying complex type declarations.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Questions et reponses niveau intermediaire / 1 a 5 ans d experience
Question 15. Explain the difference between a value type and a reference type in Swift.
A value type is copied when it's assigned to a new variable or passed as an argument, while a reference type refers to the same instance of the data.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 16. What is ARC (Automatic Reference Counting) in Swift?
ARC is a memory management feature in Swift that automatically tracks and manages the memory usage of your app.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 17. How does Swift handle error handling?
Swift uses a combination of 'try', 'catch', 'throw', and 'do' keywords for error handling using the Swift Error protocol.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 18. What is the 'guard' statement in Swift?
The 'guard' statement is used to transfer control out of a scope if certain conditions aren't met, ensuring that a set of requirements is satisfied.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 19. What is the Swift Codable protocol used for?
The Codable protocol is used for encoding and decoding data between Swift types and external data formats, such as JSON or Property Lists.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 20. Explain lazy loading in Swift.
Lazy loading is a technique in Swift where a property is not initialized until it's accessed for the first time.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 21. Explain the difference between synchronous and asynchronous tasks in Swift.
Synchronous tasks block the current thread until they are completed, while asynchronous tasks allow the program to continue executing other tasks without waiting.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 22. What is the role of the 'unowned' keyword in Swift?
The 'unowned' keyword is used in Swift to declare a reference that does not keep a strong hold on the instance it refers to, and it is assumed to always have a value.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 23. Explain the concept of generics in Swift.
Generics allow you to write flexible, reusable functions and types that can work with any type, subject to requirements that you define.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 24. How does Swift handle memory management compared to Objective-C?
Swift uses Automatic Reference Counting (ARC) for memory management, eliminating the need for manual memory management in Objective-C.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 25. Explain the difference between a struct and a class in Swift.
Structs are value types, while classes are reference types. Structs are copied when assigned or passed, whereas classes share a reference to the same instance.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 26. Explain the concept of type casting in Swift.
Type casting is the process of converting one type to another, and it can be done in Swift using 'as', 'as?', and 'as!' operators.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 27. How do you create a custom delegate in Swift?
To create a custom delegate in Swift, define a protocol, adopt it in the delegating class, and use optional delegate methods to notify the delegate of events.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 28. Explain the concept of value semantics in Swift.
Value semantics mean that the value of a type is copied when assigned to a new variable or passed as an argument, ensuring that each instance is independent.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 29. What is the 'NSRunLoop' equivalent in Swift?
In Swift, the equivalent to 'NSRunLoop' is 'RunLoop', which is used for managing input sources on a thread.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 30. Explain the difference between '==', '===', and 'isEqual' in Swift.
'==' is used to check for value equality, '===' is used to check for reference equality, and 'isEqual' is typically used for comparing objects in Objective-C and is bridged to '==' in Swift.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 31. Explain the 'escaping' closure and why it's necessary in Swift.
An 'escaping' closure is a closure that is called after the function it was passed to has returned. It's necessary when the closure is stored or outlives the scope of the function.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 32. Explain the difference between 'defer' and 'finally' in Swift.
'defer' is used to execute a block of code just before the scope is exited, while 'finally' is not used in Swift. Instead, error handling with 'defer' and 'catch' is more idiomatic.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 33. Explain the purpose of 'inout' parameters in Swift functions.
'inout' parameters allow a function to modify the value of the parameter directly, and any changes made inside the function affect the original value outside the function.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 34. What is a closure capture list, and when would you use it?
A closure capture list specifies how variables and constants are captured and held by a closure. It's useful to prevent strong reference cycles, especially when capturing 'self' in closures.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 35. What is the purpose of the 'autoreleasepool' in Swift?
The 'autoreleasepool' is used to manage the lifecycle of objects in memory, especially in performance-critical code or when working with Objective-C APIs.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 36. What is the purpose of the 'NSCoding' protocol in Swift?
The 'NSCoding' protocol is used for encoding and decoding objects, typically for archiving and unarchiving data in iOS and macOS apps.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 37. Explain the concept of key paths in Swift.
Key paths provide a way to reference properties in a type-safe manner. They are used in KVO, functional programming, and the 'Codable' protocol.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 38. What are Swift access control levels, and how are they used?
Swift has five access control levels: 'open', 'public', 'internal', 'fileprivate', and 'private'. They control the visibility of classes, methods, and properties.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Questions et reponses niveau experimente / expert
Question 39. What is the purpose of the 'init?' initializer in Swift?
The 'init?' initializer is a failable initializer, which means it can return nil if the initialization fails.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 40. What is the 'async/await' pattern in Swift?
The 'async/await' pattern is used for asynchronous programming in Swift, allowing you to write asynchronous code in a more sequential manner.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 41. Explain the concept of protocol-oriented programming in Swift.
Protocol-oriented programming is a programming paradigm in Swift that emphasizes the use of protocols to define the structure and behavior of types.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 42. What is the purpose of the '@escaping' keyword in Swift?
The '@escaping' keyword is used in Swift to indicate that a closure passed as a parameter to a function may be stored beyond the lifetime of that function.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 43. What is the purpose of the 'defer' statement in Swift?
The 'defer' statement is used to execute a block of code just before the current scope is exited, regardless of how the scope is exited.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 44. What are the key differences between Swift and Objective-C?
Swift is a modern, safer, and more concise language compared to Objective-C. It introduces optionals, type inference, generics, and is memory-safe with Automatic Reference Counting (ARC).
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 45. How does Swift handle multiple inheritance?
Swift does not support multiple inheritance directly. Instead, it uses protocols to achieve similar functionality through protocol-oriented programming.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 46. Explain the concept of generics in Swift with associated types.
Generics with associated types allow you to define protocols with placeholders for associated types, enabling you to use generic types conforming to the protocol.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 47. How do you use Key-Value Observing (KVO) in Swift?
In Swift, KVO is achieved using the '@objc dynamic' modifier for properties and the 'addObserver(_:forKeyPath:options:context:)' method.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 48. Explain the concept of method swizzling in Swift.
Method swizzling is a technique used to exchange the implementation of methods at runtime. It's often used for extending or modifying the behavior of existing classes.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Question 49. How does Swift handle memory leaks, and what are some common causes?
Swift uses Automatic Reference Counting (ARC) to manage memory, but memory leaks can still occur if strong reference cycles are created. Common causes include strong reference cycles between objects.
Enregistrer pour revision
Enregistrer pour revision
Ajoutez cet element aux favoris, marquez-le comme difficile ou placez-le dans un ensemble de revision.
Connectez-vous pour enregistrer des favoris, des questions difficiles et des ensembles de revision.
Les plus utiles selon les utilisateurs :
- What is Swift?
- Explain optionals in Swift.
- What is the difference between 'let' and 'var' in Swift?
- What are property observers in Swift?
- What is the purpose of the 'static' keyword in Swift?
Sujets d entretien associes
| Scala questions et reponses d'entretien - Total 48 questions |
| Swift questions et reponses d'entretien - Total 49 questions |
| Golang questions et reponses d'entretien - Total 30 questions |
| Embedded C questions et reponses d'entretien - Total 30 questions |
| VBA questions et reponses d'entretien - Total 30 questions |
| C++ questions et reponses d'entretien - Total 142 questions |
| COBOL questions et reponses d'entretien - Total 50 questions |
| R Language questions et reponses d'entretien - Total 30 questions |
| Python Coding questions et reponses d'entretien - Total 20 questions |