# Swift Package Manager (iOS) > Swift Package Manager, Package.swift, dependencies, versioning, local packages - 16 interview questions - Mid-Level - [Interview Questions: iOS](https://sharpskill.dev/en/technologies/ios/interview-questions.md) ## 1. What is the main manifest file required to define a Swift Package? **Answer** The Package.swift file is the mandatory manifest for any Swift Package. It contains package metadata, dependencies, targets, and products. Without this file at the package root, Xcode cannot recognize the structure as a valid package. ## 2. How to define an executable target in SPM? **Answer** An executable target produces an application or command-line tool. It differs from a library target by producing a standalone executable binary. Executable targets require a valid entry point (main.swift file or @main) to compile correctly. SPM uses .executableTarget() in Package.swift to define this target type. ## 3. What is the difference between a target and a product in SPM? **Answer** A target is a compilation unit containing source code, while a product is the consumable artifact generated from one or more targets. A product exposes targets to the outside world and defines how they are distributed. For example, the same target can be exposed as a static or dynamic library depending on the product. This separation provides flexibility in code distribution while centralizing compilation logic. ## 13 more questions available - How to declare a remote dependency in SPM? - What is the role of local dependencies in SPM? Sign up for free: https://sharpskill.dev/en/login ## Other iOS interview topics - [Swift Basics](https://sharpskill.dev/en/technologies/ios/interview-questions/swift-basics.md): 25 questions, Junior - [Swift Language Essentials](https://sharpskill.dev/en/technologies/ios/interview-questions/swift-language-essentials.md): 15 questions, Junior - [UIKit Fundamentals](https://sharpskill.dev/en/technologies/ios/interview-questions/uikit-fundamentals.md): 18 questions, Junior - [UIViewController Lifecycle](https://sharpskill.dev/en/technologies/ios/interview-questions/uiviewcontroller-lifecycle.md): 20 questions, Junior - [UserDefaults & Keychain](https://sharpskill.dev/en/technologies/ios/interview-questions/userdefaults-keychain.md): 20 questions, Junior - [Application Lifecycle](https://sharpskill.dev/en/technologies/ios/interview-questions/app-lifecycle.md): 20 questions, Junior - [Auto Layout & Constraints](https://sharpskill.dev/en/technologies/ios/interview-questions/auto-layout-constraints.md): 24 questions, Mid-Level - [UITableView & UICollectionView](https://sharpskill.dev/en/technologies/ios/interview-questions/uitableview-uicollectionview.md): 25 questions, Mid-Level - [SwiftUI Basics](https://sharpskill.dev/en/technologies/ios/interview-questions/swiftui-basics.md): 18 questions, Mid-Level - [SwiftUI State Management](https://sharpskill.dev/en/technologies/ios/interview-questions/swiftui-state-management.md): 22 questions, Mid-Level - [SwiftUI Navigation](https://sharpskill.dev/en/technologies/ios/interview-questions/swiftui-navigation.md): 18 questions, Mid-Level - [Networking & URLSession](https://sharpskill.dev/en/technologies/ios/interview-questions/networking-urlsession.md): 20 questions, Mid-Level - [Codable & JSON Parsing](https://sharpskill.dev/en/technologies/ios/interview-questions/codable-json-parsing.md): 20 questions, Mid-Level - [Core Data](https://sharpskill.dev/en/technologies/ios/interview-questions/core-data.md): 22 questions, Mid-Level - [Protocol Oriented Programming](https://sharpskill.dev/en/technologies/ios/interview-questions/protocol-oriented-programming.md): 20 questions, Mid-Level - [MVVM Architecture](https://sharpskill.dev/en/technologies/ios/interview-questions/mvvm-architecture.md): 20 questions, Mid-Level - [Push Notifications](https://sharpskill.dev/en/technologies/ios/interview-questions/push-notifications.md): 18 questions, Mid-Level - [Unit Testing & XCTest](https://sharpskill.dev/en/technologies/ios/interview-questions/unit-testing-xctest.md): 20 questions, Mid-Level - [UI Testing](https://sharpskill.dev/en/technologies/ios/interview-questions/ui-testing.md): 18 questions, Mid-Level - [Xcode & Build System](https://sharpskill.dev/en/technologies/ios/interview-questions/xcode-build-system.md): 16 questions, Mid-Level - [Memory Management & ARC](https://sharpskill.dev/en/technologies/ios/interview-questions/memory-management-arc.md): 22 questions, Senior - [Combine Framework](https://sharpskill.dev/en/technologies/ios/interview-questions/combine-framework.md): 24 questions, Senior - [Concurrency & async/await](https://sharpskill.dev/en/technologies/ios/interview-questions/concurrency-async-await.md): 26 questions, Senior - [iOS Design Patterns](https://sharpskill.dev/en/technologies/ios/interview-questions/ios-design-patterns.md): 24 questions, Senior - [Performance Optimization](https://sharpskill.dev/en/technologies/ios/interview-questions/performance-optimization.md): 22 questions, Senior - [Security & Encryption](https://sharpskill.dev/en/technologies/ios/interview-questions/security-encryption.md): 20 questions, Senior - [SwiftUI Advanced](https://sharpskill.dev/en/technologies/ios/interview-questions/swiftui-advanced.md): 22 questions, Senior - [iOS Application Architecture](https://sharpskill.dev/en/technologies/ios/interview-questions/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/en/technologies/ios/interview-questions/swift-package-manager