소피it블로그

[Swift] 100 Days of Swift - Day 13 정리 본문

개발_iOS/스위프트

[Swift] 100 Days of Swift - Day 13 정리

sophie_l 2022. 4. 1. 21:10

https://www.hackingwithswift.com/100/13

 

Day 13 – 100 Days of Swift

Follow the 100 Days of Swift and learn to build apps for free.

www.hackingwithswift.com

어제 하루 빼먹은 만큼 오늘은 이틀치를 정리해보려고 한다. 다행히 day 13부터 3일간은 복습 컨텐츠라 심적으로 큰 부담은 없었다.

 

1. constants and variables: 가능한 한 변수보다는 상수를 씀으로써 코드를 더 이해하기 쉽게 만들자. 실제로 변수를 선언해놓고 쓰지 않으면 스위프트에서 경고를 날려줄 것이다.

 

2. Double vs Float: Double has the highest accuracy. float는 수를 저장할 때 저장 공간이 더 한정되어 있기 때문에 웬만하면 더 정확한 더블을 쓰는 것을 추천

type inference가 사용될 경우 실수형 숫자(e.g., -86.783333)는 float 대신 double로 추론한다.

 

3. string interpolation: combining variables and constants inside a string. 연산자가 포함된 수식 등도 들어갈 수 있다.

var count = 2

"You can eat \(count) donuts in 10 minutes. In another 30 minutes, you will be able to eat \(count * 3) donuts."

4. 스위프트에서 한 배열 안에 여러 타입을 포함시킬 수 없지는 않지만, 그럴 경우 [Any]를 써줘야함

var myArray: [Any]

5. 딕셔너리의 경우 whitespace(줄바꿈 등)를 활용하여 더 보기 좋게 만들어주면 좋음

 

6. 루프: for i in ... 형태로 적어줄 때 i를 코드 내에서 사용하지 않으면 x-code는 i를 _로 바꾸도록 제안해줄 것임

..<는 주로 for i in 0...<myArray.count { } 처럼 배열과 함께 써줌

 

7. 스위프트의 switch/case문은 다른 언어에서와 다르게 fall through하지 않는다. 따라서 스위프트에서는 case block을 끝낼 용도로 break를 사용하지 않는다. 대신, 다음 케이스도 실행하고 싶으면 fallthrough 키워드를 써주면 된다.