iOS 앱 개발을 하며 swift의 필요한 부분만 공부하다보니 swift 문법이 많이 부족한 것 같아 천천히 기본부터 정리해보려고 합니다!
https://bbiguduk.gitbook.io/swift/ 를 참고하여 작성한 글입니다.
상수와 변수 (Constants and Variables)
프로그래밍을 해보신 분들이라면 상수와 변수가 어떤 의미인지 알고있겠죠?
상수는 값을 한 번 설정하면 변경할 수 없지만, 변수는 값을 변경할 수 있습니다.
상수와 변수의 선언
Swift에서 상수는 let
키워드와 함께 선언하고, 변수는 var
키워드와 함께 선언합니다.
let constantNumber = 10 // 상수 선언
var variableNumber = 5 // 변수 선언
또한 여러 개의 상수 또는 변수를 선언할 때 콤마로 구분하여 한 줄 선언이 가능합니다.
let x = 0, y = 0, z = 0
타입 명시 (Type Annotations)
상수 또는 변수를 선언할 때 저장할 수 있는 값의 타입을 명확하게 하기 위해 타입 명시와 함께 선언할 수 있습니다. 타입 명시는 상수 또는 변수의 이름 뒤에 콜론과 공백 한 칸 뒤에 사용할 타입을 명시합니다.
아래 예제는 text
라는 이름의 변수의 타입이 String
임을 의미합니다.
var text: String
상수와 변수의 출력
print(_:separator:terminator:)
함수로 상수 또는 변수의 값을 Xcode의 콘솔 창에 출력할 수 있습니다. separator
와 terminator
파라미터는 각각 " "
와 "\n"
으로 기본값을 가지고 있으므로 생략할 수 있습니다. 또한, 여러 값을 출력하고 싶을 때는 콤마를 이용해서 출력할 수 있습니다.
print("hi", "!")
print("hi", "!", separator: "")
// 출력
// "hi !"
// "hi!"
Swift는 문자열과 상수 또는 변수의 값을 함께 출력하기 위하여 문자열 삽입(String interpolation)을 사용합니다. 상수 또는 변수의 이름을 소괄호로 감싸고 여는 소괄호 전에 역슬래시를 추가하여 사용합니다.
let age = 17
print("My age is \(age)")
// 출력: "My age is 17"
세미콜론
Swift는 코드의 각 구문 후에 세미콜론(;)이 필수는 아닙니다. 하지만 여러 구문을 한 줄로 작성할 경우 세미콜론은 필수로 작성되어야 합니다.
let age = 17; print(age)
정수 (Integers)
정수는 부호가 있는 정수(signed) 또는 부호가 없는 정수(unsigned)가 있습니다.
Swift는 Int
로 정수 타입을 제공합니다.
부동 소수점 숫자 (Floating-Point Numbers)
부동 소수점 숫자는 3.141592
, -2.1
과 같은 분수 성분을 가진 숫자, 정수 타입의 값 범위보다 더 넓은 범위의 표현이 가능합니다.
Swift는 2개의 부동 소수점 숫자 타입을 제공합니다.Double
: 64-bit 부동 소수점 숫자를 표기Float
: 32-bit 부동 소수점 숫자를 표기
두 타입 중 일반적으로 Double
이 선호됩니다.
타입 세이프티와 타입 추론 (Type Safety and Type Inference)
Swift는 타입-세이프(type-safe) 언어입니다. Type Safe하다 라는 것은 타입을 판별할 수 있어 코드 컴파일 시 문제를 잡을 수 있다는 것을 의미합니다. Swift는 타입-세이프이기 때문에 값의 타입을 명확하게 알 수 있고 코드를 컴파일 할 때 타입 검사를 수행하여 일치하지 않는 타입을 오류로 표시합니다. 이를 통해 개발 단계에서 가능한 빨리 오류를 포착하고 수정할 수 있습니다.
예를 들어 아래의 코드에서 number
라는 상수를 Int
타입으로 명시해주었는데 String
타입인 ""
로 선언하게 되면 오류 메세지를 보여줍니다.
let number: Int = ""
// Error
// Cannot convert value of type 'String' to specified type 'Int'
하지만 이런 타입 명시가 무조건 필요한 것은 아닙니다. 값의 타입을 명시하지 않으면 Swift는 적절한 타입으로 타입 추론(Type Inference)을 합니다.
부울 (Booleans)
Swift는 Bool
이라 불리는 부울(Boolean) 타입이 있습니다. 부울(Boolean) 타입은 두 개의 부울 상수 값인 true
와 false
를 제공합니다.
'Swift' 카테고리의 다른 글
[Swift] 싱글톤(Singleton) 패턴 (3) | 2024.10.20 |
---|---|
[Swift] struct와 class (0) | 2024.07.27 |