1.1.1 Xcode 프로젝트 생성

아무래도 책이 나온 시점과 지금과의 시간이 차이가 있기 때문에 책에 나와있는 화면과 현재의 버전의 차이가 나기 때문에 다른 점이 많이 보였습니다. 가장 큰 차이가 multiplatform 메뉴인데 Swift UI 를 사용해서 iOS, ipadOS, macOS 간에 코드를 쉽게 공유할 수 있도록 도와주는 프로젝트를 생성할 때 사용한다고 하는데 대부분 story board를 이용하기에 아직은 이 이상 깊게 들어가지는 않을 생각입니다.

스크린샷 2022-04-11 오후 8.50.27.png

1.1.2 프로젝트 설정

이 프로젝트를 저장하는 폴더에는 이미 free love가 있어서 프로젝트 네이밍을 저렇게 애둘러서 썼는데 Display Name 에 표시하고자 하는 이름을 할당해줄 수 있습니다. (한글도 가능)

스크린샷 2022-04-12 오후 10.16.32.png

이전에 아무것도 모른 채로 시작했을 때 화면을 왼쪽으로 회전하거나 오른쪽으로 회전하게끔 지원하고 싶었는데 이 부분을 놓쳐서 힘들었었던 기억이 있네요...

스크린샷 2022-04-13 오전 12.23.43.png

1.1.3 프로젝트 구성과 스토리보드

어라? 책에는 없었던 SceneDelegate라는 것이 새로 생겼네요? AppDelegate 는 생명주기를 담당하는 클래스라는 것은 알겠는데 SceneDelegate 는 무슨 기능을 하는지 궁금해졌습니다.

스크린샷 2022-04-13 오전 12.34.54.png

SceneDelgate 객체는 UIResponder와 UIWindowSceneDelegate를 상속받고 있네요.

스크린샷 2022-04-14 오후 11.05.16.png

공식문서에서 확인해보니 Responder는 터치, 모션, 원격제어 및 누르기 등의 이벤트가 일어나면 UIKit은 처리를 위해 앱의 responder 객체에 이벤트를 전달한다고 되어있네요. 각자의 이벤트를 처리하려면 응답자가 해당 메서드를 재정의 해야합니다. 나중에 관련 이슈가 생기면 추후에 정리해보도록 하겠습니다.