오늘 Swift 프로그래밍 언어의 기본적인 요소들에 대해 학습했습니다. 아래는 주요 내용입니다.
Swift에는 데이터를 표현하기 위한 몇 가지 기본 데이터 타입이 있습니다:
1, -42, 100.3.14, 0.001, -2.718.true) 또는 거짓(false)의 불리언 값을 나타냅니다."Hello, Swift!", "안녕하세요".'A', '가'.이 데이터 타입들은 Swift에서 가장 기본적인 구성 요소로, 다양한 값을 표현하고 계산하는 데 사용됩니다.
Swift는 여러 데이터를 모아서 관리할 수 있는 컬렉션 타입을 제공합니다:
[1, 2, 3], ["사과", "바나나"].["name": "홍길동", "age": "30"].[1, 2, 3].이 컬렉션 타입들은 데이터를 효율적으로 저장하고 조작할 수 있게 해줍니다.
Swift에서 데이터가 메모리에 저장되고 전달되는 방식에 따라 값 타입과 참조 타입으로 나뉩니다:
값 타입(Value Type):
Int, Double), 구조체(Struct), 열거형(Enum).참조 타입(Reference Type):
Class).쉽게 말해, 값 타입은 "복사본"을 만들고, 참조 타입은 "공유된 참조"를 만듭니다.
구조체와 클래스는 데이터를 캡슐화하고 메서드를 정의할 수 있는 타입이지만, 사용 목적에 따라 구분됩니다:
구조체(Struct):
Point), 색상(Color), 사용자 정보(User).클래스(Class):
UIViewController), 네트워크 관리자(NetworkManager).따라서, 간단하고 독립적인 데이터를 다룰 때는 구조체를, 상속이나 객체 간 공유가 필요할 때는 클래스를 선택하는 것이 좋습니다.
열거형은 관련된 값들의 집합을 정의하며, 원시값과 연관값이라는 두 가지 기능을 제공합니다:
원시값(Raw Value):
Int, String 같은 타입을 사용합니다.enum Day: Int {
case monday = 1, tuesday = 2, wednesday = 3
}
let today = Day(rawValue: 2) // tuesday연관값(Associated Value):
enum Error {
case network(code: Int, message: String)
case fileNotFound(path: String)
}
let error = Error.network(code: 404, message: "Not Found")원시값은 "고정된 기본값"을, 연관값은 "케이스별 추가 데이터"를 제공한다고 이해하면 됩니다.