Có thể sử dụng các coroutine Kotlin trong sản xuất hay không và trạng thái thử nghiệm của chúng có ý nghĩa gì?Có thể sử dụng "corlin" thí nghiệm "Kotlin trong sản xuất?
Trả lời
Có thể và nên sử dụng corlinine Kotlin trong quá trình sản xuất. Đó là lý do chính để phát hành chúng trong Kotlin 1.1. Sau khi phát hành chúng, nhóm JetBrains đã cam kết duy trì tính tương thích ngược đối với bất kỳ thay đổi nào được giới thiệu với họ trong các bản phát hành nhỏ khi chúng phát triển, đồng thời cho phép mọi người thử chúng một cách an toàn trong các ứng dụng sản xuất phức tạp.
Tóm lại, sự khác biệt giữa các tính năng “thử nghiệm” và “bình thường” là dành cho các tính năng thông thường của Kotlin không thể được thêm vào trong các bản cập nhật nhỏ, vì đảm bảo tính tương thích "đầy đủ". có thể được thêm vào, nhưng không có gì có thể được gỡ bỏ (vì khả năng tương thích ngược).
Corout thử nghiệm sử dụng tên gói kotlin.coroutines.experimental
riêng biệt, để khi thiết kế coroutines được hoàn thành và chuyển sang gói kotlin.coroutines
, mã được biên dịch cũ sẽ không bị hỏng, nhưng sẽ tiếp tục hoạt động qua thư viện hỗ trợ riêng.
Thảo luận thêm (đọc dài) về lý do tại sao chúng "thử nghiệm" và điều này có nghĩa là có thể được tìm thấy trong số này forum post bởi Andrey Breslav.
Câu hỏi tương tự cũng áp dụng cho thư viện hỗ trợ coroutines.
Phiên bản hiện tại của kotlinx.coroutines
được thiết kế để sử dụng trong sản xuất. Nó được kiểm tra khá tốt với các bài kiểm tra, rất nhiều thứ đã được tối ưu hóa, tất cả các thay đổi được thực hiện xem xét các vấn đề tương thích ngược với mã được biên dịch trước đó. Nó chắc chắn phục vụ như là một giường thử nghiệm cho nhiều thứ dựa trên coroutine, do đó, có một số phần được đánh dấu rõ ràng là "công việc đang tiến hành" hoặc "không ổn định" trong tài liệu của các hàm và lớp tương ứng. Tuy nhiên, theo mặc định, tất cả các API công khai trong kotlinx.coroutines
được coi là ổn định và đang được phát triển, nếu cần, với sự hỗ trợ di chuyển thích hợp.
- 1. Cách sử dụng mã dựa trên ThreadLocal với các corlin của Kotlin
- 2. Thiết kế thí nghiệm (DoE) bằng Python?
- 3. Có đáng sử dụng std :: tr1 trong sản xuất không?
- 4. Đường ray: Thử nghiệm sản xuất
- 5. Tôi có thể sử dụng EF Core 2.0 trong các ứng dụng sản xuất không?
- 6. Làm thế nào để tổ chức một loạt các thí nghiệm khoa học sử dụng Git
- 7. Từ bọc trên phòng thí nghiệm báo cáo Bảng PDF
- 8. Đồng hồ bấm giờ có thể được sử dụng trong mã sản xuất không?
- 9. Tôi có thể sử dụng Babel Require Hook trong sản xuất cho ES6 không?
- 10. Bạn có thể sử dụng API Junit Assert trong mã sản xuất Java
- 11. Sử dụng HSQLDB trong môi trường sản xuất
- 12. Sử dụng node.js trong môi trường sản xuất
- 13. Sử dụng khung css ít hơn trong sản xuất
- 14. Sử dụng tệp persistence.xml riêng biệt để sản xuất và thử nghiệm với Spring 3.1
- 15. Sử dụng @ClassRule trong Kotlin
- 16. Có thể sử dụng Mockito ở Kotlin không?
- 17. Kinh nghiệm sử dụng Derby hoặc HSQL ở chế độ sản xuất
- 18. Phòng thí nghiệm ảo của thiết bị di động
- 19. Cách thay thế nhánh chính bằng chi nhánh thí nghiệm
- 20. Kotlin: java.lang.NoSuchMethodError trong các thử nghiệm
- 21. CouchDB trong sản xuất
- 22. Làm thế nào tôi có thể trích xuất RandomForest từ R để sử dụng trong sản xuất?
- 23. Không thể xem CKeditor trong sản xuất
- 24. Laravel 5: sử dụng nhà đất trong sản xuất
- 25. Kotlin tài sản: "Loại tham số của một tài sản phải được sử dụng trong loại máy thu của nó"
- 26. Bất cứ ai sử dụng HyperDex trong sản xuất?
- 27. Bất cứ ai sử dụng Moles/Pex trong sản xuất?
- 28. Tôi có thể sử dụng quảng cáo trên trang web sản xuất không?
- 29. Plugin Maven WADL không sản xuất WADL có thể sử dụng
- 30. Tôi có nên sử dụng biểu đồ google trong môi trường sản xuất
Điều đó vẫn khiến tôi lo lắng khi thấy cảnh báo được đánh dấu trên chức năng chúng tôi sử dụng, ví dụ: khởi động, nêu rõ 'Tính năng" coroutines "là thử nghiệm (xem thêm tại đây)' và liên kết với https://kotlinlang.org/docs/diagnostics/experimental-coroutines.html – Elye
Đó là một chút của Catch-22, không phải là nó? Làm thế nào họ sẽ được thử nghiệm chiến đấu nếu không ai thử chúng :) Mặt khác, kinh nghiệm của tôi với các tính năng "thử nghiệm" của JetBrains cao hơn nhiều so với kinh nghiệm với các bản phát hành "chất lượng sản xuất" từ nhiều nhà cung cấp khác. Cụ thể, tôi đã hoàn toàn không có vấn đề với việc thực hiện các coroutines; các "trục trặc" duy nhất mà tôi thấy là về một số chi tiết trong quá trình xử lý của chúng bằng hệ thống kiểu tĩnh, không có hậu quả trong thời gian chạy. Họ đã vượt qua các bài kiểm tra căng thẳng khá nghiêm ngặt và điểm chuẩn trong Hazelcast Jet, với màu sắc bay. –