Kotlin 코 루틴을 프로덕션에 사용할 수 있으며 실험 상태는 무엇을 의미하나요?
답변:
최신 정보 : Kotlin 코 루틴은 Kotlin 1.3에서 더 이상 실험적이지 않습니다.
Kotlin 코 루틴은 프로덕션에서 사용할 수 있으며 사용해야합니다. 이것이 Kotlin 1.1에서 공식적으로 출시 한 주된 이유입니다. 이들을 출시 한 JetBrains 팀은 사람들이 복잡한 프로덕션 애플리케이션에서 안전하게 시도 할 수 있도록하면서 마이너 릴리스에 도입 된 변경 사항과 관련하여 이전 버전과의 호환성을 유지하기 위해 노력했습니다.
간단히 말해, "실험용"기능과 "일반"기능의 차이점은 일반 Kotlin 기능의 경우 "완전 호환성"보장이 있기 때문에 새로운 기능을 사소한 업데이트에 추가 할 수없는 반면, 실험 기능의 경우 새로운 기능을 추가 할 수 있다는 것입니다. 그러나 제거 할 수있는 것은 없습니다 (이전 호환성 보장으로 인해).
실험적 코 루틴은 별도의 kotlin.coroutines.experimental
패키지 이름을 사용하므로 코 루틴 디자인이 완료되면 다음으로 이동합니다.kotlin.coroutines
패키지 이전 컴파일 된 코드가 깨지지 않고 별도의 지원 라이브러리를 통해 계속 작동합니다.
그들이 "실험적"인 이유와 이것이 의미하는 바에 대한 추가 토론 (오래 읽음)은이 포럼 게시물 에서 찾을 수 있습니다. Andrey Breslav .
코 루틴 지원 라이브러리에도 동일한 질문이 적용됩니다.
의 현재 버전은 kotlinx.coroutines
프로덕션 용도로 설계되었습니다. 그것은 테스트로 꽤 잘 다루어지고, 많은 것들이 이미 최적화되어 있으며, 모든 변경은 이전에 컴파일 된 코드와의 하위 호환성 문제를 고려하여 이루어집니다. 확실히 다양한 코 루틴 기반 작업에 대한 테스트 베드 역할을하므로 해당 함수 및 클래스의 문서에서 "진행중인 작업"또는 "불안정"으로 명확하게 표시된 부분이 있습니다. 그러나 기본적으로의 모든 공용 API는 kotlinx.coroutines
안정적인 것으로 간주되며 필요한 경우 적절한 마이그레이션 지원을 통해 발전되고 있습니다.
The feature "coroutines" is experimental (see more here)
및 링크) 에 대한 강조 표시된 경고를 보면 여전히 걱정이됩니다.