Java 9에서 은 Observer과 Observable을 대체합니까? 그렇지 않다면, 무엇을합니까?Observer와 Observable를 대체하는 Flow API가 있습니다.
18
A
답변
18
새 Flow API는 RxJava 및 Reactive X와 같은 reactive stream 라이브러리의 공통 분모로 설계되었습니다. Java 9를 기반으로 새 인터페이스를 확장 할 수 있습니다 (또는 생각한대로). JDK 내에서 API를 사용하는 것은 물론 매력적이지만 Java 9에서는 그렇지 않으며 소개하기위한 구체적인 계획은 없습니다 (아는 한).
에 관한 Observer
및 Observable
the issue which triggered the deprecation 상태 :
응용 프로그램 개발자가 풍부한 변경 알림 모델 java.beans의 사용을 고려해야합니다. 또는, 큐와 세마포어와 같은 java.util.concurrent의 구조를 신뢰할 수있는 순서 및 동기화 속성을 사용하여 스레드간에 전달할 수 있도록 고려해야합니다.
다음은 새로운 코드 작성을위한 응용 프로그램 개발자를위한 권장 사항입니다. 기존 코드를 업데이트하거나 JDK 내부에서 수행 할 작업에 대해서는 조언하지 않습니다. 그 이유는 두 경우 모두 그대로있는 것입니다.
Java에서 @Deprecated
을 사용하면 "제거됨"을 의미하지 않습니다. 대신 "더 나은 대안을 사용하라"는 의미 일 수도 있습니다. 그래서 몇 마디에 귀하의 질문에 대답하기 : 자바 (9)에서
는 흐름 API는 옵저버를 교체하고 관찰 가능한
번호
을하고 않는 경우하지 않습니다 어떤 않습니다.
없음.
+1. [JEP 277] (http://openjdk.java.net/jeps/277) 이후에 API는'@ Deprecated' 주석을 사용하여 향후 릴리스에서 삭제 될 수 있습니다. 나는이 새로운 가능성이 지금까지 사용되었다는 것을 알지 못한다. 그것은 미래에있을 수 있지만 Observer/Observable "forRemoval"을 비하 할 것이라는 것을 의심합니다. –
Java 9는 실제로 Java 8에서 사용되지 않는 일부 메소드를 제거합니다. 처음 사용했는지는 알 수 없지만 확실하지는 않습니다. 나는'@ Deprecated' _never_는 무언가가 삭제 될 수는 있지만 내 구절은 모호하다는 것을 의미하지 않는다. 귀하의 의견에 감사 드리며 저는 그것을 깨달았습니다. – Nicolai
그건 재미 있어요. 예제를 공유 할 수 있습니까? –