2013-10-24 20 views

Trả lời

9

Họ bascially tất cả các tin nhắn sử dụng, và sự khác biệt của họ chủ yếu là ngữ nghĩa:

  • kiện aggregator: gửi tin nhắn khi có chuyện xảy ra. Mã ở một nơi khác có thể đang nghe tin nhắn đó, nhưng có thể không phải
  • yêu cầu/phản hồi: có mã gửi yêu cầu và yêu cầu phản hồi (ví dụ: gửi dữ liệu làm mới cho tôi)
  • lệnh: mã ở một nơi lệnh mã ở một nơi khác để thực hiện một hành động. Thường không có giá trị trả lại.
7

Tôi muốn thêm vào số answer của David Sulc.

Yêu cầu/phản hồi rất khác với trình tổng hợp sự kiện và lệnh. Nó được sử dụng cho các trường hợp mà một phần mã của bạn yêu cầu một cái gì đó từ một phần khác của mã. Một phản ứng sẽ luôn luôn được mong đợi. Bây giờ, hãy xem cách trình tổng hợp sự kiện và các lệnh khác nhau.

Trình tổ chức sự kiện của người tổ chức sự kiện cho phép bạn triển khai hành vi đăng ký xuất bản. Sử dụng phương thức 'on' bạn có thể đăng ký một sự kiện và liên kết một sự kiện với bất kỳ đối tượng nào. Bạn không thể thực hiện hành vi ràng buộc này bằng các lệnh. Ngoài ra, bạn có thể có nhiều đối tượng nghe bất kỳ sự kiện cụ thể nào. Cũng có thể có trường hợp không có đối tượng nào bị ràng buộc hoặc nghe bất kỳ sự kiện nào.

Lệnh có ý nghĩa đặc biệt để thực hiện một số hành động trong một số phần khác của mã. Chỉ có thể có 1 trình xử lý cho một lệnh cụ thể, không giống như các sự kiện mà bạn có thể có nhiều người nghe.

Vì vậy, để tóm tắt, các trường hợp sử dụng cho mỗi sẽ là:

1) Yêu cầu/đáp ứng: Khi bạn cần một số phản hồi từ một phần khác của mã này.

2) tổ chức sự kiện Aggregator: Khi bạn muốn để ràng buộc đối tượng với các sự kiện

3) Commands: Bạn chỉ muốn một số phần khác của mã của bạn để thực hiện một nhiệm vụ.

Các vấn đề liên quan