세상을 더 편리하게
article thumbnail
[SwiftUI] StateObject와 ObservedObject 차이점
Swift/Apple Framework 2023. 4. 22. 03:39

2023.01.12 - [Swift & iOS/SwiftUI] - [SwiftUI] Who is retaining @StateObject and ObservedObject [SwiftUI] Who is retaining @StateObject and ObservedObject 면접관) @StateObject와 @ObservedObject로 문제를 해결해셨다는데 어디서 retain하고 있죠? 나) ... 잘 모르겠습니다. ObservedObejct의 Retain(소유)은 누구일까? 간단하게 위에 처럼 작성하였다. StateView는 @StateO slowsure.tistory.com 이전 글에서 누가 Retain하고 있냐에 대해서 알아보았다. 이제 특성의 차이를 알아보고자 한다. 사실 StateObject..

article thumbnail
[iOS / Swift] sort() 는 어떤 알고리즘을 쓸까?
Swift/Apple Framework 2023. 4. 22. 01:28

Swift에는 sort라는 함수가 있다. 정렬에 대한 모의면접을 봤는데 iOS에는 어떤 sort가 쓰일까요?난 대답하지 못했다. sort에 대해서 사용만 해봤지 sort 알고리즘에 대해서는 생각하지 못했다. modified timsort Swift는 2018년에 modified Timsort로 교체했다고 Issue가 남아있었다.! 수정된 Timsort.... 우선 Timsort가 무엇인지에 대해서 알아보자. Timsort는 하이브리드 알고리즘이다. 전기랑 기름으로 가는 차를 하이브리드차 라고 하듯이 2개 이상의 알고리즘을 섞은 것을 하이브리드 알고리즘이라고 한다. 그럼 이름에 담긴 뜻 Tim은? 최초 고안해낸 Tim Peter의 성을 땄다. 요약하면 다음과 같다, 1. 일정한 규칙에 의해서 배열의 크기를..

article thumbnail
[iOS / SwiftUI] Combine - 맛보기
Swift/Apple Framework 2023. 4. 21. 02:29

잡담 면접관) 컴바인 아세요? 나) 콤바인 타봤습니다. 면접관 ) 아니... Combine.... 요새 콤바인이 모르는 사람도 많을 것이다. 하지만 iOS 개발자로서 Combine에 대해서 알아보자. SwiftUI에 대해서 필수이기에!! (써놓고 무슨 개그인지 나도 모르겠다.) Combine 언제나 그랬든 우선 WWDC 소개 영상을 보고오는 것을 추천한다. Combine이 나온 이유는 데이터의 동기화가 주 목적이다. 그래서 그런지 속속 RxSwift의 빈자리를 대체하고 있다. 예제로 살펴보기 import Combine import SwiftUI struct CombineView: View { var vm = CombineViewModel() @State var anyCancellable = Set() @..

article thumbnail
[iOS / Swift] Cache
Swift/Apple Framework 2023. 4. 19. 01:10

내가 알던 캐쉬.... 메이플 스토리에 옛날에 엄마에게 허락 받고 질렀던 캐쉬가 생각난다. 그 때는 틴캐쉬라고 문방구에서 사서 팔았는데 하하하;; 머쓱해지니 본론으로 넘어가자. 본론 데이터나 값을 미리 복사해 놓는 임시 장소 캐시의 정의이다. 그럼 우리는 왜 임시 보관을 해둬야 할까? 그 답은 빠르기 때문이다. 네트워크 통신은 기기에서 이미지를 불러오는 것보다 훨씬 느리다. 그렇기에 캐쉬를 통해 성능 향상을 기대 할 수 있다. 또한 서버에 매 번 똑같은 요청을 하게된다면 서버는 부담스러울 것이다. 서버입장에서도 캐시된 이미지를 활용하는 것이 좋다. 캐쉬 종류 캐쉬의 종류에는 2가지가 있다. Memory Cache Disk Cache Memory Cache는 RAM 상에 데이터를 저장하는 방식이다. RAM..