Komendy

W przypadku gdy w serwisie parametr贸w jest du偶o i s膮 one problematyczne do wyja艣nienia (np. czemu okre艣lony parametr w og贸le jest potrzebny), mo偶na takie parametry enkapsulowa膰, a najlepiej robi膰 to za pomoc膮 komend.

Takie serwisy nie s膮 ju偶 obs艂ugiwane na zasadzie komend, tylko w takim wypadku mamy tzw. CommandHandlery.

Serwis aplikacyjny mo偶e rosn膮膰 do niesko艅czono艣ci - co mo偶e by膰 b艂臋dem. W ten spos贸b mog膮 si臋 urodzi膰 bardzo k艂opotliwe serwisy. CommandHandlery zamiast tego maj膮 jedno konkretne zadanie do zrealizowania.

Command Bus - mediator mi臋dzy komendami wrzucanymi przez u偶ytkownik贸w a systemem kt贸ry posiada command handlery.

Command handlery daj膮 te偶 wi臋ksze mo偶liwo艣ci dzia艂ania - np. okre艣lony klient mo偶e mie膰 inne CommandHandlery je艣li zachodzi taka potrzeba. Mo偶na je r贸wnie偶 wersjonowa膰. Kod jest otwarty na rozszerzenia, a zamkni臋ty na modyfikacje.

Commandy daj膮 nam mo偶liwo艣ci wspierania architektury typu multi tennant. Je艣li jednak aplikacja jest prosta - np. jest zwyk艂ym CRUDem, architektura 3 warstwowa staje si臋 lepszym rozwi膮zaniem.

Last updated

Was this helpful?