# SwiftUI Advanced (iOS) > Layout protocol, preference keys, GeometryReader, matchedGeometryEffect, ViewBuilder - 22 면접 질문 - Senior - [면접 질문: iOS](https://sharpskill.dev/ko/technologies/ios/interview-questions.md) ## 1. SwiftUI에서 Layout 프로토콜이란 무엇입니까? **답변** Layout 프로토콜은 서브뷰가 어떻게 배치되고 크기가 조정되는지 정의하여 커스텀 뷰 컨테이너를 만들 수 있게 합니다. 복잡한 레이아웃에서 수동 GeometryReader 방식을 대체하며, 정교한 뷰 배치를 구성하기 위한 선언적이고 조합 가능한 API를 제공합니다. ## 2. Layout 프로토콜을 준수하여 커스텀 레이아웃을 구현하려면 어떻게 해야 합니까? **답변** Layout를 구현하려면 두 가지 주요 메서드를 정의해야 합니다. 컨테이너의 전체 크기를 반환하는 sizeThatFits와, 배치 제안을 사용하여 각 서브뷰를 배치하는 placeSubviews입니다. 이 메서드들은 함께 작동하여 일관되고 예측 가능한 레이아웃 시스템을 만듭니다. ## 3. GeometryReader 대신 Layout 프로토콜을 사용하는 주요 장점은 무엇입니까? **답변** Layout 프로토콜은 조합 가능하고 재사용 가능한 레이아웃 접근 방식을 제공하는 반면, GeometryReader는 종종 각 뷰에 명령형 코드를 필요로 합니다. Layout은 배치 로직을 렌더링 로직과 분리하여 컴포넌트의 테스트 용이성과 유지보수성을 향상시킵니다. ## 19개 추가 질문 이용 가능 - 커스텀 레이아웃에 구성 매개변수를 전달하려면 어떻게 해야 합니까? - Layout 프로토콜 대신 GeometryReader를 사용해야 하는 경우는 언제입니까? 무료로 가입하기: https://sharpskill.dev/ko/login ## 기타 iOS 면접 주제 - [Swift 기초](https://sharpskill.dev/ko/technologies/ios/interview-questions/swift-basics.md): 25개 질문, Junior - [Swift 언어 기초](https://sharpskill.dev/ko/technologies/ios/interview-questions/swift-language-essentials.md): 15개 질문, Junior - [UIKit 기초](https://sharpskill.dev/ko/technologies/ios/interview-questions/uikit-fundamentals.md): 18개 질문, Junior - [UIViewController 생명주기](https://sharpskill.dev/ko/technologies/ios/interview-questions/uiviewcontroller-lifecycle.md): 20개 질문, Junior - [UserDefaults & Keychain](https://sharpskill.dev/ko/technologies/ios/interview-questions/userdefaults-keychain.md): 20개 질문, Junior - [애플리케이션 생명 주기](https://sharpskill.dev/ko/technologies/ios/interview-questions/app-lifecycle.md): 20개 질문, Junior - [Auto Layout & Constraints](https://sharpskill.dev/ko/technologies/ios/interview-questions/auto-layout-constraints.md): 24개 질문, Mid-Level - [UITableView & UICollectionView](https://sharpskill.dev/ko/technologies/ios/interview-questions/uitableview-uicollectionview.md): 25개 질문, Mid-Level - [SwiftUI 기초](https://sharpskill.dev/ko/technologies/ios/interview-questions/swiftui-basics.md): 18개 질문, Mid-Level - [SwiftUI 상태 관리](https://sharpskill.dev/ko/technologies/ios/interview-questions/swiftui-state-management.md): 22개 질문, Mid-Level - [SwiftUI 내비게이션](https://sharpskill.dev/ko/technologies/ios/interview-questions/swiftui-navigation.md): 18개 질문, Mid-Level - [Networking & URLSession](https://sharpskill.dev/ko/technologies/ios/interview-questions/networking-urlsession.md): 20개 질문, Mid-Level - [Codable 및 JSON 파싱](https://sharpskill.dev/ko/technologies/ios/interview-questions/codable-json-parsing.md): 20개 질문, Mid-Level - [Core Data](https://sharpskill.dev/ko/technologies/ios/interview-questions/core-data.md): 22개 질문, Mid-Level - [프로토콜 지향 프로그래밍](https://sharpskill.dev/ko/technologies/ios/interview-questions/protocol-oriented-programming.md): 20개 질문, Mid-Level - [MVVM 아키텍처](https://sharpskill.dev/ko/technologies/ios/interview-questions/mvvm-architecture.md): 20개 질문, Mid-Level - [푸시 알림](https://sharpskill.dev/ko/technologies/ios/interview-questions/push-notifications.md): 18개 질문, Mid-Level - [단위 테스트와 XCTest](https://sharpskill.dev/ko/technologies/ios/interview-questions/unit-testing-xctest.md): 20개 질문, Mid-Level - [UI 테스트](https://sharpskill.dev/ko/technologies/ios/interview-questions/ui-testing.md): 18개 질문, Mid-Level - [Xcode 및 빌드 시스템](https://sharpskill.dev/ko/technologies/ios/interview-questions/xcode-build-system.md): 16개 질문, Mid-Level - [Swift Package Manager](https://sharpskill.dev/ko/technologies/ios/interview-questions/swift-package-manager.md): 16개 질문, Mid-Level - [Memory Management & ARC](https://sharpskill.dev/ko/technologies/ios/interview-questions/memory-management-arc.md): 22개 질문, Senior - [Combine Framework](https://sharpskill.dev/ko/technologies/ios/interview-questions/combine-framework.md): 24개 질문, Senior - [Concurrency & async/await](https://sharpskill.dev/ko/technologies/ios/interview-questions/concurrency-async-await.md): 26개 질문, Senior - [iOS Design Patterns](https://sharpskill.dev/ko/technologies/ios/interview-questions/ios-design-patterns.md): 24개 질문, Senior - [성능 최적화](https://sharpskill.dev/ko/technologies/ios/interview-questions/performance-optimization.md): 22개 질문, Senior - [보안 및 암호화](https://sharpskill.dev/ko/technologies/ios/interview-questions/security-encryption.md): 20개 질문, Senior - [iOS 애플리케이션 아키텍처](https://sharpskill.dev/ko/technologies/ios/interview-questions/ios-app-architecture.md): 22개 질문, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/ko/technologies/ios/interview-questions/swiftui-advanced