Swift의 Small String Optimization

Swift의 String은 Collection 타입으로 실제 Struct 타입임에도 메모리를 Heap 주소에 저장합니다.

인스턴스가 복사되고 실제 변경이 이뤄질때 다른 힙 메모리 주소를 갖게하는 Swift의 CoW 특성을 아주 잘 활용하고 있죠!


여기까지는 많이들 아는 사실입니다 😁


그런데 길이가 작은 문자열에 대해서는 서로 다른 String 인스턴스가 힙 메모리 주소를 따로 할당받는것이 아닌 String 구조체 내에 저장되는것을 알고 계셨나요!?


이는 Small String Optimization 때문입니다.

작은 문자열에 대해서는 구조체 내에 저장하며 생성과 복사에 대한 오버헤드를 줄여줍니다.


이 낯선 Small String Optimization을 정리해봤습니다 🙋🏻

String의 Small String Optimization

iOYES

String의 Small String Optimization

더 많은 콘텐츠를 보고 싶다면?

또는

이미 회원이신가요?

2023년 10월 30일 오전 12:02

댓글 0

    함께 읽은 게시물

    워케이션 문화가 없는 조직에서 워케이션 시도하기

    ... 더 보기

    Paywatch Tech

    tech.paywatch.co.kr

    Paywatch Tech

    나는 시스템 빌더이다

    ... 더 보기


    < 당신이 나에게 줄 때, 나는 받음을 당신에게 주는 것이다 >

    1. 즐거운 마음으로 받는 것이 가장 크게 주는 것이다. 이 두 가지를 떼어놓을 수는 없다.

    ... 더 보기

    개발자 포폴을 위한 4가지 개인 프로젝트 추천 🐼

    ... 더 보기

    4 Coding Projects to Build your Developer Portfolio

    Medium

    4 Coding Projects to Build your Developer Portfolio

     • 

    저장 65 • 조회 4,000


    경쟁력 있는 주니어 인재

    ... 더 보기

    경쟁력 있는 주니어 개발자가 되는 방법

    F-Lab : 상위 1% 개발자들의 멘토링

    경쟁력 있는 주니어 개발자가 되는 방법

     • 

    저장 7 • 조회 913