LC·Dict

deep copy

숙어C1
/ˌdiːp ˈkɑːpi//ˌdiːp ˈkɒpi/

객체나 자료 구조의 내부 내용까지 모두 새로 복제한 것

phrase

  1. 1

    자료 구조나 객체를 복사할 때, 그 안의 중첩된 객체나 값까지 원본과 독립적으로 새로 복제한 것 또는 그런 복사 방식C1

    a copy, or the process of making a copy, in which nested objects or data are duplicated rather than merely referenced

    • Use a deep copy if you want to modify the list without changing the original data.

      원본 데이터를 바꾸지 않고 리스트를 수정하려면 deep copy를 사용하세요.

    • A shallow copy copied the outer object, but a deep copy was needed to duplicate the nested dictionaries.

      shallow copy는 바깥 객체만 복사했지만, 중첩된 딕셔너리까지 복제하려면 deep copy가 필요했다.

뉘앙스 · 쓰임

shallow copy는 겉 구조만 복사하고 내부 객체는 원본과 공유할 수 있다는 뜻인 반면, deep copy는 내부에 중첩된 값이나 객체까지 독립적으로 복제한다는 점을 강조한다. clone은 더 일반적인 ‘복제’라는 말이고, deep copy처럼 내부 구조까지 완전히 독립적인지 여부는 문맥이나 구현에 따라 달라질 수 있다.

주로 컴퓨터 과학·프로그래밍 문맥에서 쓰는 전문 용어이다. 일상 대화에서 ‘깊은 복사’라는 비유적 의미로 쓰는 표현은 아니며, 언어와 라이브러리에 따라 deep copy의 정확한 동작 방식이 다를 수 있다. 형용사처럼 쓸 때는 deep-copy operation처럼 하이픈을 붙이기도 하고, 동사로는 deep-copy 또는 make a deep copy라고 표현한다.

유의어 뉘앙스 비교

full copy
비전문적으로 ‘전체 복사’라는 뜻을 전달할 수 있지만, 프로그래밍에서 deep copy만큼 정확한 기술 용어는 아니다.
recursive copy
내부 구조를 재귀적으로 따라가며 복사한다는 구현 방식에 초점을 둔 표현으로, deep copy와 비슷하지만 더 기술적으로 들린다.
clone
일반적으로 복제한다는 뜻이며, 실제로 deep copy인지 shallow copy인지는 언어·라이브러리·문맥에 따라 다르다.

반의어

shallow copy
겉 구조만 새로 만들고 내부 객체는 원본과 공유할 수 있는 복사 방식이다.
reference copy
새 객체를 만들기보다 같은 객체를 가리키는 참조만 복사한다는 뜻에 가깝다.

어원 · 암기 팁

[English]컴퓨터 과학에서 복사의 범위를 설명하기 위해 deep과 copy가 결합된 표현이다. deep은 자료 구조의 ‘깊이’, 즉 중첩된 내부 단계까지 내려간다는 의미이고, copy는 복제를 뜻한다. shallow copy와의 대비를 통해 널리 쓰이게 되었다.

💡 deep을 ‘속 깊은 곳까지’라고 기억하면 쉽다. deep copy는 바깥 껍데기만이 아니라 안에 들어 있는 객체까지 깊숙이 복사하는 것이다.

deep copy 뜻 · 발음 · 예문 | LC 영어사전