중첩 삼항 연산자 피하기
조건부 로직을 읽기 쉽고 유지 관리하기 좋게 작성합니다.
중첩 삼항 연산자 피하기은(는) CoddyKit의 무료 Swift Academy 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Swift Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
삼항 연산자가 유용한 경우
단일 삼항 연산자는 간단한 두 가지 선택을 깔끔하고 읽기 쉽게 표현합니다. 한 삼항 연산자를 다른 삼항 연산자 안에 중첩하면 문제가 시작됩니다.
let temp = 10
let label = temp < 0 ? "Freezing" : "Above zero"
print(label)중첩된 삼항 연산자
두 가지보다 많은 경우를 처리하기 위해 삼항 연산자를 중첩할 수는 있지만, 결과는 빠르게 읽기 어려워집니다.
let score = 75
let grade = score >= 90 ? "A" : score >= 80 ? "B" : score >= 70 ? "C" : "F"
print(grade)중첩이 문제를 일으키는 이유
중첩된 삼항 연산자는 어떤 콜론이 어떤 물음표와 짝을 이루는지 독자가 머릿속으로 추적하게 만듭니다. 작은 실수 하나가 동작을 조용히 바꿀 수 있습니다.
영리함보다 명확성을 우선하십시오.
let value = 5
let text = value > 0 ? "positive" : value < 0 ? "negative" : "zero"
print(text)if/else if로 리팩터링하기
같은 다중 선택은 if / else if / else 연쇄로 작성하면 훨씬 읽기 쉽습니다. 각 분기가 자신의 줄에 놓입니다.
let score = 75
let grade: String
if score >= 90 {
grade = "A"
} else if score >= 80 {
grade = "B"
} else if score >= 70 {
grade = "C"
} else {
grade = "F"
}
print(grade)대신 switch 사용하기
범위를 기준으로 결정할 때는 범위에 대한 switch가 가장 깔끔한 선택인 경우가 많습니다.
let score = 85
let grade: String
switch score {
case 90...100: grade = "A"
case 80..<90: grade = "B"
case 70..<80: grade = "C"
default: grade = "F"
}
print(grade)함수로 추출하기
어떤 결정을 여러 곳에서 재사용한다면 의미가 잘 드러나는 이름의 함수로 옮기십시오. 호출하는 위치만 읽어도 의도가 드러납니다.
func gradeLetter(for score: Int) -> String {
if score >= 90 { return "A" }
if score >= 80 { return "B" }
if score >= 70 { return "C" }
return "F"
}
print(gradeLetter(for: 64))삼항 연산자 하나는 괜찮습니다
규칙은 "삼항 연산자를 절대 사용하지 말라"는 것이 아닙니다. 명확한 두 가지 선택을 표현하는 단일 평면 삼항 연산자는 Swift에서 자연스러운 방식입니다.
let isAdmin = true
let role = isAdmin ? "Admin" : "User"
print(role)간결함보다 가독성
더 짧은 코드가 항상 더 좋은 코드는 아닙니다. 검토자가 한 줄을 해석하기 위해 멈춰야 한다면 더 길더라도 명확한 형식을 선택하십시오.
let stock = 0
let availability = stock > 0 ? "In stock" : "Sold out"
print(availability)삼항 연산자에서 부수 효과 피하기
삼항 연산자의 두 분기에는 단순한 값만 사용하십시오. 부수 효과가 있는 함수 호출을 삼항 연산자 안에 숨기면 코드가 예측하기 어려워집니다.
let level = 2
let points = level == 1 ? 100 : 200
print(points)이름이 있는 조건과 결합하기
조건이 복잡하다면 먼저 이름이 있는 불리언에 저장한 다음 단일 삼항 연산자에서 사용하십시오. 이름이 의도를 설명해 줍니다.
let age = 20
let hasLicense = true
let eligible = age >= 18 && hasLicense
let result = eligible ? "Approved" : "Denied"
print(result)명확한 다중 선택 예시
이전의 중첩된 삼항 연산자와 이 읽기 쉬운 if 연쇄를 비교해 보십시오. 둘 다 같은 답을 만들지만, 이쪽이 유지 관리하기 쉽습니다.
let value = -3
let sign: String
if value > 0 {
sign = "positive"
} else if value < 0 {
sign = "negative"
} else {
sign = "zero"
}
print(sign)빠른 확인
가장 좋은 방식을 선택해 보십시오.
복습: 중첩된 삼항 연산자 피하기
두 가지 선택에는 단일 평면 삼항 연산자를 사용하십시오. 세 가지 이상의 경우에는 if/else if 또는 switch를 선택하십시오. 미래의 자신도 논리를 따라갈 수 있도록 가독성을 우선하십시오.
let n = 7
let parity = n % 2 == 0 ? "even" : "odd"
print(parity)자주 묻는 질문
“중첩 삼항 연산자 피하기” 강의는 무료인가요?
네 — “중첩 삼항 연산자 피하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Swift Academy 강의 전체를 잠금 해제할 수 있습니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“중첩 삼항 연산자 피하기”에서 뭘 배우나요?
조건부 로직을 읽기 쉽고 유지 관리하기 좋게 작성합니다. 브라우저에서 직접 실행하는 실습 코드로 Swift Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Swift Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Swift Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.
“중첩 삼항 연산자 피하기” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Swift Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Swift Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- Bool 값과 표현식
- 삼항 조건 연산자
- 중첩 삼항 연산자 피하기
- 불리언 메서드와 토글