Đây là tiêu chuẩn interface based programming.
Bằng cách trả lại IAsyncResult, khuôn khổ là miễn phí để thay đổi triển khai nội bộ sau này mà không vi phạm mã được viết dựa trên API của khuôn khổ. Điều này, về bản chất, nói với chúng ta, với tư cách là các nhà phát triển, rằng chúng ta không nên quan tâm đến kiểu triển khai nào được sử dụng, miễn là giao diện (IAsyncResult) được đáp ứng.
Nếu, thay vào đó, lớp AsyncResult thực tế được trả lại, sau đó thay đổi sang một lớp khác sẽ phá vỡ mã hiện có.
Ngoài ra, điều này cho phép khung sử dụng cùng một giao diện (IAsyncResult) ở nhiều nơi, cho dù lớp AsyncResult có phù hợp hay không. Tôi đã tận dụng lợi thế của điều này, cá nhân, như tôi đã thực hiện chức năng không đồng bộ của riêng tôi mà trở về IAsyncResult được hỗ trợ bởi một lớp khác nhau, trong đó lưu trữ các thông tin đó là quan trọng với tôi. Điều này cho phép mã của riêng tôi hoạt động giống như khung công tác, mà không hạn chế tôi thực hiện khung công tác.
Nguồn
2010-02-28 18:52:55
Làm cho tinh thần. Thanx vì sự giúp đỡ của bạn – AspOnMyNet
Thiên đường giúp chúng tôi nếu họ cần thêm chức năng khác vào giao diện đó. – Will