데이터모델 (도메인 모델). 앱의 핵심 데이터 형식을 정의하는 객체
: 사용자가 입력한 데이터를 저장하고 이를 목록이나 상세화면에 출력할 수 있도록 데이터 소스 역할을 하는 객체.
딱히 형식이 있지는 않고, 주로 클래스로 정의. or 단위 데이터를 이루는 여러 속성을 프로퍼티로 선언하는 것이 일반적.
오늘 메모앱의 경우 MemoData.swift -> 데이터식별값, 메모제목, 내용, 이미지, 작성일 담는 파일 = 데이터모델
*Appdelegate는 앱 자체의 생명주기와 운명을 함께 한다. 앱이 생성될 때 함께 생성되었다가, 앱이 소멸될 때 함께 소멸됨.
한번 생성되면 앱이 종료되기전까지는 계속 유지된다.
따라서 앱이 사용할 데이터를 여기에 저장해두면 데이터의 유실을 걱정하지 않아도 된다.
Appdelegate 객체에 저장되는 데이터는 메모리에 저장됨. 앱이 실행되는 동안에만 데이터가 유지. 앱 종료되면 저장된 데이터들 역시 소멸.
*
아웃렛변수 연결할 때
weak타입으로 연결하는 경우 2가지
1) 메모리가 부족하거나
2) 순환 참조 오류가 발생할 때
(두 개 이상의 객체가 서로를 강하게 참조하고 있어 객체들이 메모리에서 해제될 수 없는 상황)
(만약 두 변수 중 어느 하나가 weak타입으로 참조되어 있다면 시스템은 순환 오류를 해결하기 위해 weak타입으로 참조된 변수를 우선 해제. 그러면 순환 참조 사이클이 끊어지면서 나머지 변수도 참조 카운트가 0이되어 차례대로 메모리에서 해제됨) - ARC참조
'iOS > iOS Swift 개발 일기' 카테고리의 다른 글
TIL 7.3 (0) | 2022.07.03 |
---|---|
TIL 7.2 (0) | 2022.07.02 |
TIL 6.29 정리 (0) | 2022.06.29 |
iOS swift 실습 중 기능별 찾아볼 수 있게 정리 (0) | 2022.06.11 |
iOS swift WKWebView (0) | 2022.06.10 |