0Pricing
Swift Academy · 강의

중첩 삼항 연산자 피하기

조건부 로직을 읽기 쉽고 유지 관리하기 좋게 작성합니다.

중첩 삼항 연산자 피하기은(는) 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 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. Bool 값과 표현식
  2. 삼항 조건 연산자
  3. 중첩 삼항 연산자 피하기
  4. 불리언 메서드와 토글
← Swift Academy(으)로 돌아가기