세 클래스가 있습니다. EntityManager, 엔터티 및 구성 요소입니다.순환 참조는 나쁜 습관입니까?
엔티티는 구성 요소 (포인터)의 배열을 가지며 이러한 각 구성 요소는 캡슐화 엔티티에 대한 포인터 인 필드를 가지고 있습니다.
EntityManager의 엔티티들의 어레이를 가지며, 각 엔티티는 캡슐화 의 EntityManager의 포인터를 갖는다.
이 디자인의 이유는 데이터 의존성 때문입니다. 구성 요소은 캡슐화 엔티티의 필드에 액세스해야하며 일부 구성 요소는 다른 엔티티의 필드 (엔티티 관리자에 대한 포인터)에 의존합니다.
이 "순환"디자인은 나쁜 습관입니까? 내 디자인을 다시 생각해야할까요?
반드시 '나쁜 습관'또는 '나쁜 디자인'은 아닙니다. 요점은 포인터 소유권/참조를 올바르게 얻는 것입니다. –
이 문제는 표시되지 않습니다. 같은 장소에 참조를 추가/삭제하는 논리를 넣는 것이 좋습니다. 관리자 였지만 엔터티가없는 관리자로 끝내기를 원하지는 않습니다. –