2012-10-12 15 views
28

Natknąłem się na nowe pojęcie o nazwie CQRS (Command Query Responsibility Segregation), które stwierdza, że ​​model koncepcyjny powinien zostać podzielony na model polecenia i model zapytania jako typowy model CRUD, w którym polecenie i zapytanie występują w tym samym modelu. Artykuł zawiera wszystkie informacje teoretyczne.Jak dostosować CQRS do projektów?

Nie rozumiem, w jaki sposób powinienem wdrożyć to w projekcie z ASP.net MVC3, EF 4.3 i jQuery.

Czy ktoś może zasugerować mi, jak praktycznie wdrożyć go w moim projekcie?

+3

najważniejsze jest to: czy tego potrzebujesz? popracuj nad zielonym projektem i wypróbuj różne rzeczywiste scenariusze. CQRS potrzebuje pewnych dodatków, które mogą przekształcić prosty projekt w skomplikowany. – Arthis

+0

http://cqrs.nu/ (DDD + CQRS + pozyskiwanie zdarzeń) – Soren

+0

Istnieje artykuł na temat github na temat konwersji istniejącego projektu z podstawowej strony MVC nad strukturą podmiotu, aby wykorzystać aspekty CQRS - https://github.com/Chinchilla-Software-Com/CQRS/wiki/Tutorial-0: -Quick-Northwind-sample. może się okazać, że z niego skorzystasz. – cdmdotnet

Odpowiedz

29

CQRS Journey to dobre miejsce na rozpoczęcie. Proponuję również, aby obejrzeć kanał A Journey into CQRS na kanale 9.

W każdym razie najlepszą rzeczą do nauki CQRS jest samodzielne wypróbowanie. Dla mnie muszę się nauczyć, jak dostosować go do moich projektów na około 6 miesięcy.

+4

Podróż _CQRS_ jest bezużyteczna. Jedyne, czego się od niego uczysz, to o czym jest wzorzec - jest to tylko jedno zdanie - ale nie ma jednego przykładu, jak go wdrożyć. Kilka stron o rzeczach, które nikomu nie pomagają. – t3chb0t

4

Ten artykuł zawiera szczegółowe wyjaśnienie. introduction to cqrs

+0

Implementacja CQRS jest całkowicie błędna. Jest zbudowany na repozytorium, które ma metody "Zapisz" i "Pobierz", które wyraźnie naruszają wzór CQRS. Dlaczego powinienem na nim umieścić taką przesadzoną warstwę/abstrakcję CQRS? To niesamowite. – t3chb0t

1

Chcę podkreślić klasyczny przykład z samego Grega Younga: Simple CQRS example

+1

Odpowiedzi dotyczące linków mogą utracić ważność, jeśli strona z linkami się zmieni. Lepiej jest umieścić tutaj istotne części odpowiedzi i podać odnośnik. – carlodurso