실험실 SwiftUI 리스트뷰 최적화 비교 WWDC21에서 SwiftUI의 List뷰의 성능&애니메이션 최적화에 관한 내용이 있었습니다. 그 내용 중에서 리스트뷰 셀 재사용 최적화 및 애니메이션 변경점에 관해서 알아보겠습니다. 리스트에 사용될 모델에 Identifiable을 상속하면 리스트뷰의 셀이 재사용 되고 애니메이션도 이쁘게 나오게 된다고 합니다. 그 내용을 직접 프로젝트에 적용해 보기로 했습니다! Before 코드를 보시면 o... iOS실험실swiftuiiOS [Swift] Equatable vs Hashable 비교 성능 테스트 먼저 , , 에 대해 초 간단히 알아봅시다. Equatable: '==' 으로 비교 가능하게 해주는 녀석 Comparable: '<, >, <=, >=' 으로 비교 가능하게 해주는 녀석 Hashable: 해시값 만들어주는 녀석 ('1087909095493923794' 이런식) 해시값은 객체의 유니크한 값을 만들어줍니다. 그렇기 때문에 Hashable만 상속하고 있으면 Set 자료형에도 넣을 ... iOS실험실swiftiOS [Swift] Unicode Scalar 그리고 문자열 count 시간 복잡도 관계 Unicode Scalar란? 하나 이상의 Unicode Scalar가 모여 Character를 이룬다. 여기서 크기가 가변적인 String 이라함은 다음 예제를 보시면 단번에 이해가실겁니다. 단일 문자에 대해서 UTF-8, UTF-16, Unicode Scalar의 길이를 카운팅 해봤습니다. Unicode Scalar만 길이를 1을 가지고 UTF-8, UTF-16은 항상 가변적인 걸 확인하... iOS실험실swiftiOS mutating struct VS class 성능 테스트 위와 같은 형식의 구조체와 클래스의 인스턴스를 무수히 반복하여 처리한다고 했을 때 구조체가 성능면에서 더 우세하다는 건 알고 있을 것이다. 그렇다면 mutating function 이 자주 사용되는 Struct라면 어떨까?! 의 답변에 따르면 mutating function이 사용된 경우 구조체의 인스턴스는 메모리 상에서 새 인스터스로 교체된다고 한다. 아무리 Value Type으로 처리된다... 실험실알고리즘실험실
SwiftUI 리스트뷰 최적화 비교 WWDC21에서 SwiftUI의 List뷰의 성능&애니메이션 최적화에 관한 내용이 있었습니다. 그 내용 중에서 리스트뷰 셀 재사용 최적화 및 애니메이션 변경점에 관해서 알아보겠습니다. 리스트에 사용될 모델에 Identifiable을 상속하면 리스트뷰의 셀이 재사용 되고 애니메이션도 이쁘게 나오게 된다고 합니다. 그 내용을 직접 프로젝트에 적용해 보기로 했습니다! Before 코드를 보시면 o... iOS실험실swiftuiiOS [Swift] Equatable vs Hashable 비교 성능 테스트 먼저 , , 에 대해 초 간단히 알아봅시다. Equatable: '==' 으로 비교 가능하게 해주는 녀석 Comparable: '<, >, <=, >=' 으로 비교 가능하게 해주는 녀석 Hashable: 해시값 만들어주는 녀석 ('1087909095493923794' 이런식) 해시값은 객체의 유니크한 값을 만들어줍니다. 그렇기 때문에 Hashable만 상속하고 있으면 Set 자료형에도 넣을 ... iOS실험실swiftiOS [Swift] Unicode Scalar 그리고 문자열 count 시간 복잡도 관계 Unicode Scalar란? 하나 이상의 Unicode Scalar가 모여 Character를 이룬다. 여기서 크기가 가변적인 String 이라함은 다음 예제를 보시면 단번에 이해가실겁니다. 단일 문자에 대해서 UTF-8, UTF-16, Unicode Scalar의 길이를 카운팅 해봤습니다. Unicode Scalar만 길이를 1을 가지고 UTF-8, UTF-16은 항상 가변적인 걸 확인하... iOS실험실swiftiOS mutating struct VS class 성능 테스트 위와 같은 형식의 구조체와 클래스의 인스턴스를 무수히 반복하여 처리한다고 했을 때 구조체가 성능면에서 더 우세하다는 건 알고 있을 것이다. 그렇다면 mutating function 이 자주 사용되는 Struct라면 어떨까?! 의 답변에 따르면 mutating function이 사용된 경우 구조체의 인스턴스는 메모리 상에서 새 인스터스로 교체된다고 한다. 아무리 Value Type으로 처리된다... 실험실알고리즘실험실