기본 구현 Foo를 제공하려는 인터페이스 IFoo가 있습니다. Foo는 IFoo를 구현하는 다른 클래스에서 포함 된 클래스/구성 요소로 사용할 수 있습니다.포함 된 구성 요소로 사용되는 인터페이스의 기본 구현
IFoo는 Foo에 대한 호출을 전달하여 대부분 구현하는 여러 클래스에서 사용하지만 일부 메소드의 경우 자체 구현을 제공 할 수 있습니다.
Foo는 호출 클래스의 (개인) 멤버에 액세스해야합니다.
IFoo 인터페이스의 일부가 아니기 때문에 이러한 멤버를 메서드 호출에서 인수로 전달할 수 없습니다.
이러한 목적으로 만 이러한 멤버에게 공개 속성을 제공하면 호출 클래스의 인터페이스가 지나치게 복잡해 지므로 바람직하지 않습니다.
질문 : Foo에 이러한 멤버에 대한 액세스 권한을 부여하는 좋은 디자인 또는 일반적으로 어떻게 달성됩니까? 이것에 대한 알려진 디자인 패턴이 있습니까?
EDIT : 상속은 IFoo를 구현하는 클래스가 같은 클래스에서 상속 할 수 없기 때문에 옵션이 아닙니다.
IFoo를 구현하는 클래스가 같은 클래스에서 상속받을 수 없기 때문에 상속을 선택할 수 없습니다. 이것은 다중 상속 상황입니다. – Peladao
수정 됨. 나는 희망. – zmbq
이것은 사실 내가 생각하고 실제로 상당히 일반적으로 보이는 대안 중 하나입니다. 그러나 기본적으로 기본 구현으로 사용되지만 도우미 클래스가 인터페이스를 사용하지 않기 때문에 매우 세련된 방법은 아닙니다. 그러나 그것을 설명해 주셔서 감사합니다. – Peladao