일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Xcode
- isolate
- weatherkit
- SwiftUI
- network
- iot
- AppleDeveloper
- 문법
- SampleApp
- builder
- WiFi
- concurrency
- OpenAI
- LifeCycle
- state
- dartz
- philipshue
- WWDC24
- designpattern
- Adapter
- factory
- uikit
- EventLoop
- dart
- singleton
- flutter
- GIT
- swift
- Architecture
- tuist
- Today
- Total
목록전체 글 (56)
Jaebi의 Binary는 호남선
목차iOS App LifecycleiOS 앱의 생명주기는 크게 3가지로 분류Not Running → 앱이 실행되고 있지 않은 상태Foreground → 앱이 실행되어 화면을 차지 하고 있는 상태InActive → 외부적인 방해로 Full Control 불가능Active → 앱이 화면을 차지하고 있으면서 앱을 Full Control 가능Active 상태가 되거나 벗어날때는 InActive를 반드시 거쳐가야함Background → 앱이 메모리를 차지하고 있지만 화면을 차지하지 않은 상태Running → 화면을 차지하지 않더라도 Background에서 게속 작업을 수행Suspend → 앱이 메모리에서 아무 행동을 하지 않으면서 사용자가 앱을 다시 실행할 때까지 대기Flow예시 상황Not Running → In..
목차App앱의 구조와 동작을 나타내는 Protocolapp의 content를 정의하는 `body` computed property 필요`@main` annotation으로 entry point 지정 → 모든 app file에는 하나의 entry point`body` → `Scene` 프로토콜을 준수하며 각 scene은 view hierarchy의 rootview와 lifecycle을 가지고 있음여기서 모든 scene에서 공유할 수 있는 state를 선언 할수 있음`@StateObject` / `@ObservedObject` attribute로 model을 만들고 view input으로 `ObservedObject`, 또는 `EnvironmentObject`로 scene에 넣을수 있음예시:@mainstru..
목차ARC메모리 영역중 Heap 영역을 관리Swift는 인스턴스, 클로저 등등 참조 타입을 자동으로 Heap에 할당ARC는 클래스 인스턴스가 더 이상 필요하지 않을 때 메모리를 자동으로 해제함Reference Count로 메모리를 관리 → 메모리 참조 횟수를 계산하여 참조 횟수가 0이 되면 더 이상 사용하지 않는 메모리라 판단하여 해제모든 인스턴스는 자신의 RC값을 가지고 있으며 누가 가르키고 있느냐 없느냐를 숫자로 표현됨Processclass Human { var name: String? var age: Int? init(name: String?, age: Int?) { self.name = name self.age = age }} let sodeu..
목차메모리 구조Code작성한 코드 소스가 기계어 형태로 저장컴파일 타임에 결정, Read-Only 형태로 저장Data전역변수 (Global Variable), static 변수 저장프로그램 시작과 동시에 할당프로그램 종료에 메모리 해제Read-Write로 저장Swift에서는 static 기본 동작이 lazy임으로 해당 값에 처음 접근할 때 값이 할당되어 메모리에 올라감Heap개발자가 할당 / 해제 하는 메모리 영역할당 후 메모리 해제를 해줘야함 (안하면 memory leak 발생)유일하게 런타임 시 결정됨, 데이터 크기가 확실하지 않을때 사용Stack함수 호출시 함수의 지역 변수, 매개변수, 리턴 값 등등이 저장됨함수 종료시 메모리도 해제됨컴파일 타임에 결정되어 무한히 할당 할 수 없음HeapSwift에..