Tôi hiện đang bắt đầu tạo một ứng dụng có thể thu lợi nhiều từ tính năng không đồng bộ của C# 5. Nhưng tôi không chắc chắn phiên bản nào của VS và thời gian chạy async để sử dụng.Sử dụng tính năng chờ đợi không đồng bộ trên .net 4
Nhìn vào biểu đồ phổ biến OS, tôi cần hỗ trợ Windows XP thêm ba năm nữa. Có vẻ như .net 4.5 chỉ chạy trên các phiên bản Windows mới hơn, vì vậy tôi cần phải nhắm mục tiêu .net 4.0. Các máy phát triển sử dụng Windows 7, vì vậy việc sử dụng phiên bản mới hơn của VS không phải là vấn đề.
Bây giờ tôi cần phải đầu tiên chọn một trình biên dịch để làm điều này:
- VS2010 với AsyncCTP
- VS2012 Preview (và cuối cùng một lần nó đến), thiết lập các mục tiêu NET 4.0
- Mono (Có vẻ như 2,12 có dạng đồng bộ đang chờ, tôi thích/am được sử dụng để VS trên MonoDevelop là IDE)
Loại nào có ít lỗi mã hơn? Nhìn vào Jon Skeet's blog Bản xem trước VS2012 sử dụng trình tạo mã không bao giờ so với CTP.
Và quan trọng hơn là thời gian chạy để sử dụng?
VS2012 có chứa thời gian chạy không đồng bộ phân phối lại để sử dụng với .net 4 không?
Tôi đã quản lý để biên dịch mã, với bản xem trước, bằng cách tham chiếu thời gian chạy AsyncCTP. Nhưng kể từ khi CTP có điều kiện cấp phép lạ, điều đó không giống như một giải pháp dài hạn tốt.
Hoặc tôi có nên sử dụng triển khai của bên thứ ba không? Có lẽ mono có một?
Để phân phối thư viện, tôi chỉ đơn giản là đặt dll vào cùng thư mục với ứng dụng, thay vì một số loại trình cài đặt.
Tôi cũng muốn nó nếu các tệp nhị phân của tôi hoạt động mà không có thay đổi về mono + Linux/MacOS. Vì vậy, thời gian chạy hoặc là nên tương thích với bất kỳ mono (2.12 có lẽ) đã được xây dựng trong, hoặc cho phép sử dụng trên các hệ điều hành windows không.
Tôi không nghĩ rằng bạn sẽ đạt được một phiên bản CTP vì bạn sẽ không được phép phân phối lại bất kỳ thứ gì thuộc CTP với ứng dụng thương mại. Chắc chắn có các lỗi ẩn nấp xung quanh và nó chưa được tối ưu hóa cho hiệu năng.Bạn có thể sẽ phát triển nhanh hơn nhưng khách hàng của bạn sẽ không vui khi cài đặt phần mềm beta có thể can thiệp vào các phiên bản cuối cùng được phát hành. –
@Alois Các phiên bản sau của AsyncCTP cho phép phân phối lại. Và điều tồi tệ nhất có thể xảy ra là ứng dụng của tôi bị hỏng. Nó không giống như nó có thể can thiệp với các ứng dụng khác, vì vậy tôi không thấy hiểu buổi hòa nhạc của bạn qua can thiệp với phiên bản cuối cùng. Ngoài ra một phần của câu hỏi của tôi là nếu có bao giờ sẽ có một phiên bản cuối cùng hỗ trợ WinXP ở nơi đầu tiên. – CodesInChaos
Giấy phép nêu rõ (Async CTP 3) "1.a.ii. bạn đồng ý ngừng sử dụng ngay lập tức khi có thông báo từ Microsoft;". Tôi nghi ngờ thông báo này sẽ đến từ MS khi nó được phát hành. Tôi không có luật sư nhưng tôi chắc chắn bộ phận pháp lý của bạn (nếu bạn có một) rất thích nghe lý do của bạn như thế nào bạn muốn nhận được xung quanh điều này mà không vi phạm các điều khoản cấp phép. –