⎮ 속성으로 가격 추가하기
1. 코드 추가
let price: Double?
/*
판매하는 국가에 따라 소수점을 사용하는 경우도 있으므로, Double로 설정
무료 강의는 nil로 return하기 위해 Optional로 설정
*/
2. 코드 수정
var isFree: Bool{
return price == nil
}
/*
위의 코드를 추가함으로써
let isFree: Bool 코드를 사용 할 필요가 없어졌으므로,
삭제하거나 계산 속성으로 변경하여 적용
*/
⎮ 수강 기간 만들기
1. 코드 추가 * 기간을 저장할 때는 일단위로 저장하는 것이 좋음(년 단위로 계산할 때는 0.083인데 오차가 발생함)
let period: Int?
// 여기에 nil이 저장되면 무제한 수강으로
⎮ 할인 기간동안만 할인가 적용하기
1. 코드 추가
let discountedPrice: Double?
// 값이 nil이면 할인 중이 아닌 것
2. 계산 속성 추가 * Locale은 대소문자를 구문하지 않음
3. priceString의 Type을 optional Type으로 변경하기 * 어차피 UILabel 자체가 text를 optional String Type으로 받음.
⎮ 정가 적용하기
1. 코드 추가하기
return formatter.string(for: price)
'Swift > 기초' 카테고리의 다른 글
39. 스위프트 기초 문법[Modeling(5) - Camp 모델 개선] (0) | 2025.02.18 |
---|---|
38. 스위프트 기초 문법[Modeling(4) - Camp 모델링] (0) | 2025.02.17 |
36. 스위프트 기초 문법[Modeling(2) - Formatters] (0) | 2025.02.11 |
35. 스위프트 기초 문법[Modeling(1) - 모델링 기초와 다양한 속성들] (0) | 2025.02.11 |
34. 스위프트 기초 문법[Type(3) - 클래스, 열거형 활용] (0) | 2025.02.07 |