개발하는 뚝딱이

[swift] 프로답게 스위프트로 코딩하기 본문

swift

[swift] 프로답게 스위프트로 코딩하기

개발자뚝딱이 2021. 8. 17. 21:40

https://medium.com/codex/swift-upgrade-your-skills-with-these-8-tips-da612111668

본문은 다음 링크와 같습니다.

원글에는 더 다양한 예시들이 많으나, 기본 문법처럼 보이는 것들을 제외하고

팁으로 생각되는 것들만 추려보았습니다.

 

 

1. tuples을 다양하게 쓰기

tuple에 이름을 함께 주어 값을 전달할 수 있습니다.

func getInfo() -> (name: String, email: String) {
    return (name: "Matt", email: "matt@example.com")
}

// 값에 접근하는 방법
let info = getInfo()
print(info.name) // Matt
print(info.email) // matt@example.com

 

또한, tuple을 통해 변수 값들을 서로 바꿀 수 (swaping) 있습니다.

var a = 1
var b = 2
(a, b) = (b, a)

 

 

2. 값을 읽을 수는 있되, 바꾸지 못하도록

public private(set)타입을 통해, 값을 읽은 수 있지만 바꿀 수 없도록 구현할 수 있습니다.

struct House {
    public private(set) var address: String
}

 

3. Identity Operator

'===' 기호는 identity operator로 한 클래스의 두 인스턴스가 동일한지 확인할 수 있습니다.

class Fruit {
  var name = "Banana"
 }
 
 let fruit1 = Fruit()
 let fruit2 = fruit1
 
 fruit1 === fruit2 // true

 

4. Collection의 모든 아이템이 조건을 만족하는지 확인하기

allSatisfy라는 메소드를 통해 빠르게 확인이 가능합니다.

let dailyTemperatures = [101, 105, 108, 110]
let reallyHot = dailyTemperatures.allSatisfy { $0 >= 100 }
print(reallyHot) // true

 

'swift' 카테고리의 다른 글

[swift] 스위프트를 더 스위프트스럽게 사용하기  (0) 2021.03.11
[swift] 프로토콜 초기구현  (0) 2020.09.28
[swift] 프로토콜  (0) 2020.09.21
[swift] 상속  (0) 2020.09.05
[swift] 서브스크립트  (0) 2020.06.25