내 상황에서 더 나은 해결책은 무엇이며, 수업을 설계하는 방법은 매우 어울리지 않습니다.밀접하게 결합 된 수업 : 내 상황에서 더 좋은 디자인은 무엇입니까?
일부 기능을 제공하는 라이브러리 (API)가 있습니다 (예 : subscribe
메서드로 스트리밍 FX 가격에 가입). 나는 그것이 원하는 가격을 API에 알려주는 API 클라이언트를 가지고있다. API는 SubscribeSuccess(Subscription) and SubscribeFailed(Subscription)
메소드를 사용하여 일부 인터페이스 (예 : SubscriptionStatus
)와 함께 피드백을 제공합니다. API 클라이언트에는 활성 구독 목록 (List<Subscription> activeSubscriptions
)이 있습니다. 그리고 API 클라이언트는 구독 성공에 반응해야합니다 (목록에 구독 만 추가). 다른 경우에는 - 로그 할 메시지를 인쇄하십시오. 구독 청취자와 API 클라이언트 간의 관계를 구성하는 가장 좋은 방법은 무엇입니까? 옵션이 될 수있다 :
- 패스 API 클라이언트 인스턴스 가입 리스너가
apiClient.addSubscription(subscription)
- API 클라이언트가
SubscriptionStatus
인터페이스를 구현 구현 호출하고 해당 이벤트를 관리 할 수 있습니다 (실패 성공 내부 : activeSubscriptions.add (가입)) . 콘트라 : 많은 종류의 행동이 있고 모든 행동에는 독자적인 청취자가 있습니다. 그래서 Api Client는 정말 큰 수업이 될 것입니다. - 하나의 메소드
SubscriptionSuccess(subscription)
으로 인터페이스를 정의하고 API 클라이언트가 구현하도록 허용 하시겠습니까? - 옵션은 무엇입니까?
주제에 대한 의견을 보내 주시면 감사하겠습니다.
감사합니다.