iOS & Swift 공부 (2)

김영채 (Kevin)·2020년 12월 24일
1

iOS & Swift

목록 보기
2/107
post-thumbnail

Xcode 와 좀 더 친해지게 되었고, swift 기본 문법을 조금 배웠다. 이전에 파이썬을 한 학기 동안 배운 적이 있는데, 조금해서 그런지 기본 문법을 익히는 데에 크게 어려운 것 같지는 않다.

우선 주요 강의는 이정도(?) 들은 것 같다. 밑에 Code Exercise 도 몇 개 있긴 했었는데, 간단한 문제 풀기여서 복습하기 좋았다.

Image Literal

Xcode에는 image literal이라는 신기한 것이 있다. ViewController 파일에서 특정 Image View에 이미지를 삽입할 때, 보통 id값을 주거나 파일 경로를 하나하나 다 뒤져야 하는 경우가 많은데, Xcode 는 조금 더 사용자 친화적이게 만들었다. 위와 같이 변경하고자 하는 image 변수에 image literal 이라고 쓰면 뜬다.

엔터를 치면 작은 이미지 아이콘이 나오는데, 이걸 더블 클릭하면..

아이폰 UI 보듯이 고를 수 있는 사진이 쫘악 뜬다. 물론 이 이미지들은 프로젝트 디렉토리에 모두 있어야 한다. 정말 고르기도 쉽고, 보기도 좋으니 편리하다는 생각이 들었다.

이미지 하나 고르면 저렇게 실제 이미지가 변수 값에 저장된 것을 볼 수 있다. 안드로이드 스튜디오를 조금 하다가 이거 보니까 신세계다.

아 그리고 강의를 들으면서 알았던건, 특정 element/변수의 속성을 정의할 때, (ex. image, alpha값 등) 그것이 우측의 attributes inspector 에 있는 이름과 똑같다는 것이다.

Debug Console

안드로이드 스튜디오에 Log 함수가 있는 것처럼, Xcode 도 비슷한 기능이 있다. 엄밀히 따지면 디버깅 용도는 아닌 것 같지만, 지금 상황이 어떻게 흘러가고, 어떤 것이 눌러졌고, 지금 변수 값이 무엇인지 등등 확인 할 때 그냥 print문을 사용하면 된다는 것을 알았다. 버튼을 누르면 Button got tapped가 출력되는 것처럼, 디버깅 용도로 사용하면 될 것 같다.

출력

C언어에서는 print문 내에 변수 값을 넣어서 출력하려면 대강
print("sum of a and b is %d", sum); 이런 식으로 해야 한다. 스위프트에서는 \() 란다. \(sum) 이렇게 변수값을 넣으면 한 번에 출력된다.

Image Literal 배열

UIImage 속성을 가진 사진들을 배열에도 이렇게 저장 가능하다.

Random 값 추출

Random 값 추출을 위해서는 Int.random() 을 사용한다. 소수를 위해서는 Float.random()을 사용하면 된다.

Int.random(in: 0...5) 이렇게 작성하면 0~5 (5포함) 사이의 값 중 랜덤값 하나를 추출하게 된다.

따로 range를 지정해서 랜덤값을 추출해도 되긴 하지만, 아예 randomElement() 함수를 쓰면 더 편리하다.

randomElement() 함수를 쓰면 배열 크기 내에서 알아서 무작위 값을 추출해준다.

Range Operator

... 점을 3개 쓰면 lower 와 upper 모두 포함하여 그 사이의 값을 의미하는 closed range operator 를 의미한다.

반면 ..< 이렇게 작성하면 half open range operator 라고 해서 upper 값은 포함되지 않는다.

신기하게 Bool 값도 랜덤하게 추출 가능하다. 그런데 bool 값은 True 아니면 False 2개 밖에 없기 때문에 따로 range 를 지정할 수는 없다.

profile
맛있는 iOS 프로그래밍

0개의 댓글