적절한 캡슐화 방법에 대해 article으로 문의했습니다. 그것은 정말로 나의주의를 끌었고 나의 이전의 혼란의 일부를 해결했다. 그런 다음 구현에 대해 생각했습니다. 일반적인 참조를 노출하는 속성이나 getter 메서드가 없어야합니다. 이를 달성하기 위해 각 내부 필드를 새로 생성해야합니다. 그러나 건설 논리를 알거나 적절한 생성자를 찾는 것이 항상 가능한 것은 아닙니다. 그래서 나는이 목적을 위해 깊은 복제가 사용될 수 있다고 생각했습니다.정확한 캡슐화를 위해 딥 복제
깊은 복제를 달성하는 몇 가지 방법이 있습니다 (one way, some other ways).
내 질문은 :
1 내 접근 메이크업 감각 않거나 완전히 넌센스인가?
2- 딥 (deep) 복제 작업이 위험하거나 불확실합니까? 그렇다면 핵심 모듈 (비즈니스 모델 게터)에 동적 (또는 불확실한) 동작을 사용하는 것이 적절합니까?
추신 : 기사에서 Java가 사용 되더라도 .NET 또는 C#에 대한 질문을합니다. 나는 정말로 확신 할 수 없지만 자바는 다른 복제 능력을 가지고 있을지도 모른다. Java에 익숙하지 않습니다.
고맙습니다. 이 개념을 은색 총알처럼 사용해서는 안된다는 것이 맞습니다. 그러나 나는 그것으로부터 통찰력을 얻었습니다. 그것은 가치가 있습니다. 나는이 문제 때문에 여러 번 붙어있다. 나는 이것을 "참고 중독"으로 묘사했으나 제대로 풀 수는 없었다. –