Network에서 데이터를 가지고 올 수 있으면 let으로 만들어도 됨.

다만 Optional로 쓰기 위해서 var로 만듬.

import UiKit

struct Movie {
	var movieImage: UIImage?
	let movieName: String
	let movieDescription: String
}

생성시 키나 절대값을 주고 싶을때

struct Member {
    
    //이미지가 없다면 굳이 생성하지 않도록 지연 저장 속성 lazy
    lazy var memberImage: UIImage? = {
        //이름이 없다면, 시스템 사람이미지 기본 셋팅
        guard let name = name else { return UIImage(systemName: "person") }
        
        return UIImage(named: "\\(name).png") ?? UIImage(systemName: "person")
    }()
    
    //멤버의 절대적 순서를 위한 타입 저장 속성
    static var memberNumbers: Int = 0
    
    let memberId: Int
    let name: String?
    let age: Int?
    let phone: Int?
    var address: String?
    
    init(name: String?, age: Int?, phone: Int?, address: String? = nil) {
        
        self.memberId = Member.memberNumbers
//        self.memberId = Member.memberNumbers == 0 ? 0 : Member.memberNumbers
        
        self.name = name
        self.age = age
        self.phone = phone
        self.address = address
        
        //멤버를 생성한다면, 항상 타입 저장속성의 정수값 +.
        Member.memberNumbers += 1
        
    }
}