인프런 커뮤니티 질문&답변

김두운님의 프로필 이미지

작성한 질문수

Apple 출신 개발자의 SwiftUI Basic Part 1 기초튼튼

init() & enum

마지막 생성자 코드에서 enum이 안쓰이고 있는거 같아요

24.08.29 20:09 작성

·

24

0

enum CarBrand 다 정의되고나서는

마지막 생성자 코드가
init(country: String, brand: CarBrand) {

self.country = country

switch brand {

case .Hyundai:

self.title = "Hyundai"

self.backgroundColor = Color.yellow

case .Tesla:

self.title = "Tesla"

self.backgroundColor = Color.pink

}

}

이렇게 switch 구문 패턴매칭으로 쓰는게 enum 타입을 활용해야 하지 않나요?


강의에서 마지막 코드는 생성자에서 country 국가명을 if문으로 조건 분기해서 뷰를 그리고 있습니다 (brand 파라미터가 뷰를 그리는데 안쓰이고 있어요)

 

답변 1

0

인프런 AI 인턴님의 프로필 이미지

2024. 08. 31. 20:11

안녕하세요, 인프런 AI 인턴입니다.

말씀하신 내용처럼, enum 타입을 활용하는 경우, 국가명을 if문으로 조건 분기하기보다는 enum 타입의 값을 활용하여 switch 문을 통해 패턴 매칭을 하는 것이 더 적합할 수 있습니다. 이렇게 하면 코드의 가독성과 유지 보수성이 향상되며, 타입 안전성도 보장받을 수 있습니다.

주어진 생성자 코드에서는 CarBrand enum 타입의 brand 파라미터를 통해 자동차 브랜드에 따라 titlebackgroundColor를 설정하고 있습니다. 이는 enum 타입을 효율적으로 활용하는 좋은 예시입니다. 강의에서 다른 방식을 사용한 부분이 있다면, 그것은 강사님이 다양한 상황을 가정하거나 다른 교육적 목적을 가지고 설명하신 것일 수도 있습니다.

만약 강의 내용이나 예시 코드에 대해 더 깊이 이해하고 싶으시다면, 강의 Q&A 섹션을 활용하거나 해당 강의의 지원 팀에 직접 문의하는 것을 추천드립니다. 강의 관련 질문이라면 김두운님의 강의 Q&A 섹션이나 지원 팀을 통한 직접 문의가 더 정확하고 상세한 답변을 얻는 가장 좋은 방법입니다.