반디북
데이터 지향 프로그래밍
Ch9
만혁

영속 자료 구조

9.1 영속 자료구조의 필요성

데이터를 변경하지 못하게 막는 건 가능하지만 일일이 불변 상태로 전환해야 하기에 불편함이 있다.

규모가 크다면 단순한 구조적 공유는 메모리와 연산 모두에서 성능 문제를 일으킨다

단순한 구조적 공유는 실수로 데이터가 변조되는것을 막지 못한다

9.2 영속 자료구조의 효율성

여기서 말하는 영속이란 데이터 변경시 항상 이전 버전의 데이터가 유지된다는 점에서 영속 이라 한다

영속 자료구조는 특정 api 로만 접근 가능하다


불변 컬렉션과 영속 자료구조는 다르다

불변 컬렉션과 영속 자료구조는 동일하다고 생각했는데

이번 챕터를 읽고 다르다는것을 알게 되었다.

기본적으로 불변 컬렉션은 신규 버전을 효율적으로 생성하는 방법을 제공하지 않기에

영속 자료구조와 같이 활용하면 더 좋은 방법이 되는것 같다

현실에서는 100억 개의 컬렉션이어도 효율적으로 다룰 수 있다 따라서 거의 일정한 시간안에 연산이 가능하다는 장점이 있다

우석