구조체는 값 타입이고 클래스는 참조 타입입니다. 값 타입과 참조 타입이 다른 점은 값 타입을 넘긴다면 전달될 값이 복사되어 전달됩니다. 참조타입을 넘긴다면 참조(주소)를 복사하여 전달됩니다. 애플의 가이드라인에서는 다음 조건 중 하나 이상 해당된다면 구조체를 사용하는 것을 권장합니다. - 연관된 간단한 값의 집합을 캡슐화하는 것만이 목적일 때 - 캡슐화한 값을 참조하는 것보다 복사하는 것이 합당할 때 - 구조체에 저장된 프로퍼티가 값 타입이며 참조하는 것보다 복사하는 것이 합당할 때 - 다른 타입으로부터 상속받거나 자신을 상속할 필요가 없을 때