🦉 Swift 치트시트

Apple이 개발한 현대적이고 안전한 언어

기본 문법

변수 선언
var name = "Swift"
let age = 25
var isActive = true
let maxSize: Int = 1000
조건문
if condition {
    statement
} else if otherCondition {
    otherStatement
} else {
    defaultStatement
}
반복문
for i in 0..<10 {
    print(i)
}

for item in items {
    print(item)
}
함수 정의
func add(a: Int, b: Int) -> Int {
    return a + b
}

func greet(name: String) {
    print("Hello, \(name)!")
}

클래스와 구조체

클래스
class Person {
    var name: String
    var age: Int
    
    init(name: String, age: Int) {
        self.name = name
        self.age = age
    }
    
    func greet() -> String {
        return "Hello, I'm \(name)"
    }
}
구조체
struct Point {
    var x: Double
    var y: Double
    
    mutating func moveBy(x deltaX: Double, y deltaY: Double) {
        x += deltaX
        y += deltaY
    }
}
프로토콜
protocol Drawable {
    func draw()
}

class Circle: Drawable {
    var radius: Double
    
    init(radius: Double) {
        self.radius = radius
    }
    
    func draw() {
        print("Drawing a circle with radius \(radius)")
    }
}
확장
extension String {
    func isEmail() -> Bool {
        return self.contains("@") && self.contains(".")
    }
}

옵셔널과 옵셔널 체이닝

옵셔널
var optionalName: String? = "John"
var optionalAge: Int? = nil

if let name = optionalName {
    print("Name is \(name)")
} else {
    print("Name is nil")
}
옵셔널 체이닝
class Person {
    var pet: Pet?
}

class Pet {
    var name: String
    init(name: String) { self.name = name }
}

let person = Person()
let petName = person.pet?.name
nil 병합 연산자
let defaultName = "Unknown"
let name = optionalName ?? defaultName
가드문
guard let name = optionalName else {
    print("Name is required")
    return
}
print("Name is \(name)")
더 많은 Swift 학습 자료

체계적인 학습을 위해 다음 자료들도 확인해보세요