Bir komuta ve otobüs iletişimindeki bir olay arasındaki fark bana biraz belirsiz geliyor. Bir olay birden çok kez işlenirken komutların yalnızca bir kez yürütülmesi gerektiğini biliyorum, ancak ne zaman bir komut veya olay kullanacağımdan emin değilim.
Bir örneğe bakalım:
Yeni bir kullanıcı bir web uygulamasına kaydolduğunda, ona bir hesap oluşturmalı ve bir onay e-postası göndermeliyiz.
Hesap oluşturma - bu CreateUserCommand
, otobüse a göndermek ve özel bir bileşenin işlemesini sağlamak için doğru nokta gibi görünüyor .
Ya da belki de bu zaman uyumsuz bir veri yolu iletişimi ile uygulanmamalıdır? Kullanıcının hemen uygulamaya giriş yapabilmesini istiyoruz. Veriyolu ile komutun ne zaman yürütüleceğini garanti etmiyoruz.
E-posta gönderme - bileşen hesabı oluşturduktan sonra 2 olasılık görebiliyorum
- Otobüse başka bir komut gönder
SendConfirmationEmailCommand
- Etkinlik yayınlama
UserAccountCreatedEvent
Ve e-posta gönderen bileşeninin onu ve işini almasına izin verin.
Bir yandan onay e-postasının yalnızca bir kez gönderilmesini istiyorum (bir komut kullanın), diğer yandan yeni kayıtlı kullanıcılarla ilgilenen birden fazla bileşen olabileceğine inanıyorum. Bir kaydedici veya belki bir SMS göndericisi.
Nasıl uygularsınız?