InterviewQuestions Hashable이 무엇이고, Hashable은 Equatable을 왜 상속해야할까? Hashable은 Equatable을 왜 상속해야할까? Hash가 될 수 있다 == HashTable에서 찾을 수 있다 (자신의 해시값을 찾을 수 있어야 한다) 해시테이블에서 해시값(Hash Value)을 찾으려면 key로 찾아야 하는데 그 key는 unique해야한다 Hash Value가 뭐지 어떤 데이터가 와도 64비트짜리 정수로 치환하는거 (암호화) 2개의 데이터 비교시 데이터가 동일할... InterviewQuestionsHashableEquatableEquatable Copy On Write 값타입의 경우 변수에 할당하거나 함수의 파라미터로 넘길 때 할당된 값이 복사가 된다. 따라서 이러한 이슈를 최소화하기 위해 특정 값타입의 경우 수정이 일어나거나, 참조가 한번 이상 될때만 복사가 되도록하여 성능을 개선하였다. 다시 말해서 수정 (쓰기)이 일어날 때 복사한다는 뜻으로, 단순히 값을 전달할 때는 복사가 아니라 기존 값의 참조를 통해 불필요한 복사를 줄여서 메모리를 절약할 수 있다... InterviewQuestionsReference Typecopy-on-writecollection typeValue TypeInterviewQuestions
Hashable이 무엇이고, Hashable은 Equatable을 왜 상속해야할까? Hashable은 Equatable을 왜 상속해야할까? Hash가 될 수 있다 == HashTable에서 찾을 수 있다 (자신의 해시값을 찾을 수 있어야 한다) 해시테이블에서 해시값(Hash Value)을 찾으려면 key로 찾아야 하는데 그 key는 unique해야한다 Hash Value가 뭐지 어떤 데이터가 와도 64비트짜리 정수로 치환하는거 (암호화) 2개의 데이터 비교시 데이터가 동일할... InterviewQuestionsHashableEquatableEquatable Copy On Write 값타입의 경우 변수에 할당하거나 함수의 파라미터로 넘길 때 할당된 값이 복사가 된다. 따라서 이러한 이슈를 최소화하기 위해 특정 값타입의 경우 수정이 일어나거나, 참조가 한번 이상 될때만 복사가 되도록하여 성능을 개선하였다. 다시 말해서 수정 (쓰기)이 일어날 때 복사한다는 뜻으로, 단순히 값을 전달할 때는 복사가 아니라 기존 값의 참조를 통해 불필요한 복사를 줄여서 메모리를 절약할 수 있다... InterviewQuestionsReference Typecopy-on-writecollection typeValue TypeInterviewQuestions