일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 인프런
- 데드락
- IOS
- scrollview
- 가상 메모리
- COLOR
- @state
- 상호배제
- Apple Developer Academy
- Algorithm
- 오브젝트
- UserDefaults
- async
- 100 days of SwiftUI
- Linked List
- 동시성
- 운영체제
- SwiftUI
- 프로세스 스케줄링
- 알고리즘
- 동기화
- core data
- Swift
- deadlock
- Codable
- forEach
- 비동기
- 앨런
- struct
- decode
- Today
- Total
목록Class (3)
기어가더라도 제대로
스위프트의 특성인 구조체와 클래스의 차이점에 대해서 이야기를 해볼까합니다. 둘의 차이점을 이해하기 위해서는 Identity라는 개념을 이해하는것이 중요합니다. 뷰들 간에 데이터를 전달할 때, Struct로 전달하게 되면 뷰마다 고유한 Struct가 생기게 되서 서로 다른 값을 보여줄 가능성이 있습니다. 뷰들간에 공통된 데이터를 보여주고자 할 때 그 타입을 Class로 선언하는데요. 왜 이런 차이가 발생하게 되었는지 알아보도록 하죠. 표지판과 교통 경찰의 관계 예를 들어 도로에서 교통 관리를 해주는 경찰관과 교통 표지판의 차이라고 할까요? 표지판의 경우에는 이해하기 쉽게 구조체에 은유를 하겠습니다. 결론부터 말하자면 표지판에 글자가 달라지면, 그 표지판은 전에 있던 표지판과 같은 표지판이 아닙니다. 이 말..
1. 성능상의 이유 Class라고 하면 상속간에 받는 모든 속성과 프로퍼티가 UIView 마다 상속됨 UILabel, UIButton, 등 생각해보면 많은 것들이 UIView나 UIControl로 부터 상속받는다. UIView 의 경우 합이 약 200개의 속성과 메서드를 물려받는다. Struct는 보이는 코드가 전부임 View가 Struct 인 이유임 2. 변수를 깔끔하게 변경하기 위해 Class 는 인스턴스가 let으로 선언되어 있어도 내부 프로퍼티가 var면 변경 가능 struct는 인스턴스가 let으로 선언되어 있다면 내부 프로퍼티가 var여도 변경 불가능 시스템 사용중에 상태 변경이 가능한 프로퍼티를 @State로 선언해서 변경가능성을 열어줌 3. View 의 뒤에는 뭐가 있을까? "아무것도 없다..
목차 1. class 생성 방법 2. 상속하는 방법 3. class 에 initializer 추가하기 4. class copy 5. class deinitializer 6. class의 property 가 어떻게 변하는가? 등을 알아봅시다. class VS. struct (기초) 생성방법이 struct 와 비슷, 중요한 점에서 차이 "class" 키워드를 붙이느냐, "struct" 키워드를 붙이느냐 차이 공통점 타입을 생성하고 이름 부여 속성, 메서드, 프로퍼티 감시자, 접근 제어를 할 수 있음 원하는 방식으로 initializer를 커스텀하게 구현가능 차이점 바탕이 되는 class의 기능위에 또다른 class 를 만들 수 있다. 혹은 선택적으로 override 할 수도 있다. 완벽하게 따라가는게 아니기..