Event là gì?
Một event là một sự kiện gì đó đã xảy ra trong quá khứ.
Khi bạn viết một phần mềm, chung quy lại tất cả mọi thứ chỉ để phục vụ cho mục đích cuối cùng là quản lý các đối tượng có trong hệ thống. Một phần mềm quản lý nhân sự sẽ quản lý danh sách và trạng thái của các nhân sự, một hệ cơ sở dữ liệu quản lý danh mục các bảng và dữ liệu bên trong chúng, một hệ điều hành quản lý các tiến trình và các thiết bị ngoại vi…
Lưu ý là “trạng thái” biểu thị giá trị hiện tại của tất cả các thuộc tính, ví dụ tên hay địa chỉ của nhân sự, giá trị của các dòng trong một bảng hay ID của một tiến trình…
Mỗi một sự thay đổi trạng thái sẽ dẫn đến một sự kiện, hay nói cách khác mỗi một sự kiện đại diện cho một sự thay đổi trạng thái nào đó. Vì sự kiện luôn là một thứ đã diễn ra trong quá khứ nên giá trị của nó không thể thay đổi và được đặt tên ở thì quá khứ, ví dụ như PersonNameChanged, RowAdded hay OrderDelivered. Tất nhiên chúng ta sẽ thấy rằng trong một phần mềm sẽ có rất nhiều sự kiện xảy ra, việc mô hình hóa hay viết ra tất cả các event là không thể, và thực ra là không cần thiết, chúng ta chỉ cần định nghĩa các sự kiện có ảnh hưởng đến bài toán cần giải quyết.
Continue reading “Domain Event và Integration Event”
