면접 준비 - 1
1.bounds와 frame의 차이점에 대해 설명하시오
- bounds: 자기 자신의 좌표계 안에서 위치와 크기를 표현
- frame: SuperView의 좌표계에서 위치와 크기를 표현
2.실제 디바이스가 없을 경우 개발 환경에서 할 수 있는 것과 없는 것을 설명하시오.
- 시뮬레이터에서는 기본적인 기능과 UI레이아웃만 확인이 가능하다.
- 시뮬레이터의 경우 실제 성능 확인(processing, graphics, networking 속도 등)이 어렵다.
3. 앱이 foreground에 있을 때와 background에 있을 때 어떤 제약사항이 있나요?
- Foreground mode는 메모리 및 기타 시스템 리소스에 높은 우선순위를 가지며 시스템은 이러한 리소스를 사용할 수 있도록 필요에 따라 background 앱을 종료합니다.
- Background mode는 가능한 적은 메모리공간을 사용해야함(시스템 리소스 해제, 메모리에서 해제 후 데이터를 디스크에 작성)
application(_:didFinishLaunching:) - 앱이 처음 시작될 때 실행
applicationWillResignActive: - 앱이 active 에서 inactive로 이동될 때 실행
applicationDidEnterBackground: - 앱이 background 상태일 때 실행
applicationWillEnterForeground: - 앱이 background에서 foreground로 이동 될때 실행 (아직 foreground에서 실행중이진 않음)
applicationDidBecomeActive: - 앱이 active상태가 되어 실행 중일 때
applicationWillTerminate: - 앱이 종료될 때 실행
- not Running
앱이 실행되지 않은 상태- Foreground상태
- Inactive
앱이 실행중이지만 아직 아무런 이벤트를 받지 않은 상태 (Foreground 상태에서 전화가 왔을때, 잠금상태, 멀티태스킹 스크린에서는 InActive 상태를 가집니다.)
- Active
앱이 실행중이며 현재 이벤트를 받고 있고 발생한 상태- Background
앱이 백그라운드에 있는 상태이지만 여전히 실행되고있는 코드가 있는 상태- Suspened
앱이 백그라운드에 있고 실행되는 코드가 없는 상태 (App은 여전히 메모리에 존재하며 Suspend 상태가 될 당시의 상태를 저장하고 있지만, CPU나 배터리를 소모하지 않습니다. 언제든지 메모리 부족등의 이유로 종료됨.)
4. 앱이 In-Active 상태가 되는 시나리오를 설명하시오
- App이 실행 중이지만 이벤트를 받지 않는 상태
- 다른 상태로 넘어가기 전에 앱은 반드시 이 상태를 거침
- 전화나 메시지 같은 interrupt 발생 시
- 미리알림 같은 특정 알림창이 화면을 덮어서 앱이 실질적으로 event를 받지 못하는 상태 등이 여기에 해당
5. SceneDelegate에 대해 설명하시오
- Multiple Window를 지원함 에따라서 프로세스(앱)은 하나지만 여러개의 Window를 지원하기 위해서 Scene delegate를 만들었다
- iOS 13 이후로 App Delegate에서 담당했던 UI생명주기 관리가 Scene Delegate로 분리됨
- Scene Session이 생성되거나 삭제될 때 AppDelegate에 알리는 두 메소드가 추가됨. Scene Session은 앱에서 생성한 모든 scene의 정보를 관리 (생성과 삭제시 appDelegate가 관여)
참고 및 출처
- https://zeddios.tistory.com/811
- https://www.notion.so/scene-delegate-f38edecda09943d3989d6437feff8b73
- https://stackoverflow.com/questions/38219267/what-is-the-difference-between-background-state-inactive-state-non-running-s
- https://sibalja.tistory.com/6
- https://haningya.tistory.com/217
- https://www.browserstack.com/test-on-ios-simulator
Author And Source
이 문제에 관하여(면접 준비 - 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@rnfxl92/iOS-면접-준비-1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)