출처 : 유투버 KxCoding님의 메모장 만들기
역시.. 클론 코딩도 코딩이지만, 마냥 따라하기엔 늘지 않는 느낌이 강하게 든다. 해서,
이 프로젝트 하나하나 뜯어 본 후에 나만의 메모장을 만들어 봐야 할 것 같다.
이 프로젝트를 클론 코딩하면서 모르는 부분을 적어놓을려고 한다.
시 ~ 작!
Appdelegate의 역할
1. Application의 entry point역할과 life-cycle을 관리하는 역할을 한다.
appdelegate.swift파일안의 코드에 관하여 간단히 설명
- func application(_: didFinishLaunchingWithOptions: ) -> Bool
: 앱 시작시 앱 설정이 완료될 때 호출됨.
- func application(_: configurationForConnectin:options:) -> UISceneConfiguration
: 새 장면이나, 새 창이 필요할 때마다 호출
- func application(_: didDiscardSceneSessions:)
: 멀티 태스킹 창에서 스와이프 ㅅ하는 것과 같이 장면을 삭제할 때 호출 (코드로 제거시 호출 가능.)
2. URL열기, 메모리 경고 catch, 종료될 시점 catch
info.plist 역할
1. 애플리케이션의 기본 정보
2. 번틀, 소프트웨어 정보 저장
3. XML
- 개발 지역, 언어
- 실행 파일 이름
- 번들을 식별하는 값
- info.plist의 버전
- 16글자 미만의 번들 이름(앱 이름)
- 번들 OS 코드 종류
- 번들 릴리즈, 빌드 버전
- IOS 에서만 실행하는지 여부
- 앱의 scene 기반 라이프 사이클 관련 정보
- 간접 입력 지원 여부
- 런치스크린 파일 이름
- 메인 스토리보드 파일 이름
- 지원 디바이스(요구 조건)
- permission (인터넷 등.)
- AR, camera, 회전처리 등등등 많다.
SceneDelegate의 역할
1. AppDelegate에서 하던 기능이 분리되어 생겨난 놈.
2. windows 또는 Scene에 표시되는 내용을 처리하고 앱이 표시되는 방식을 관리
3. 앱 시작 이벤트 관리
4. UISceneSession의 장면 생성, 파괴 및 상태 복원과 같은 장면의 생명주기 담당
*Scene이란? : 화면 단위, 사용자에게 다양한 컨텐츠를 보여주고 사용자와 상호작용 하는 하나의 단위!(button, controller 뭐 이런 것들)
*window이란 ? : 클릭
분리 이유?
: 아이패드 OS에 Multiple Window (다중 창) 지원 기능이 적용된 결과.
- func scene(~)
: ContenView 생성, UIWindow 생성
: UIWindow 객체의 rootViewController로 할당
: 사용자에게 윈도우 표시
- func sceneDidBecomeActive
: WillEnterForeground 메소드 다음에 호출 됨. 장면이 설정되고 표시할 준비가 되었음을 알려줌.
- func sceneWillEnterForeGround
: 백그라운드에서 포그라운드로 전환 시 실행https://developer.apple.com/documentation/uikit/uiwindow/1621601-makekeyandvisible
- func sceneDidEnterBackground
: 백그라운드에서 포그라운드로 전환시 실행 (위의 func다음으로 실행 됨.)
'개발언어 > Swift' 카테고리의 다른 글
스위프트 테이블 뷰(table view, dataSource, delegate)이란? (0) | 2022.01.13 |
---|---|
스위프트 네비게이션 컨트롤러(navigation controller) (0) | 2022.01.11 |
스위프트 메모장 만들기 7 (DB 연동) (0) | 2022.01.02 |
스위프트 메모장 만들기 7 (줄 바꿈 기능) (0) | 2022.01.01 |
스위프트 메모장 만들기 6 (목록화면 to 보기화면) (0) | 2021.12.31 |