about 1 month ago - 1 comment
Podczas 58. spotkania Krakowskiej Grupy Developerów .NET miałem przyjemność poprowadzić prezentację pt. “Domain Driven Design, czyli programowanie przez modelowanie”. Ponieważ zakładam, że nie wszyscy jesteście z Krakowa i uczestniczyliście w spotkaniu, pozwolę sobie opisać o czym mówiłem. Prezentację możecie obejrzeć lub ściągnąć (format pptx) stąd (via SlideShare), a przykłady w kodzie stąd.
Rozwiązywanie problemów
Na początku chciałbym [...]
about 1 month ago - No comments
For the last few days I was mainly pair-programming (pair-refactoring to be honest) some Silverlight UI code. I must confess I really rarely write UI code these days. Actually, I don’t remember the last time I’ve written a ASP.NET control from scratch. I did write some UI for DDDSample.Net but it was not production code [...]
about 1 month ago - No comments
What makes Event Sourcing so interesting? I it is not the free, proven, audit trial, nor the possibility of reincarnating object in any particular state it had in the history. It is also not the great performance of add-only event store. It is testability.
Why Event Sourcing makes things testable? By splitting up logic responsible for [...]
about 2 months ago - No comments
W ciągu ostatnich dwóch tygodni moją uwagę przykuł na dobre nowy framework open source — Ncqrs (witryna CodePlex Ncqrs znajduje się tutaj). Jak sugeruje nazwa, Ncqrs służy do budowy systemów w oparciu o wzorzec architektoniczny Command-Query Responsibility Separation (CQRS). To, czego nazwa nie mówi, to fakt, że Ncqrs narzuca pewną specyficzną implementację wspomnianego wzorca, a [...]
about 2 months ago - 4 comments
W minioną sobotę miałem przyjemność uczestniczyć w krakowskiej edycji Visual Studio Community Launch. Co prawda, jako jeden z organizatorów, nie jestem najlepszą osobą do obiektywnej oceny tego wydarzenia, ale moim zdaniem było super.
Podczas VSCL miałem okazję sprawdzić się także w roli prelegenta, prowadząc dwie piętnastominutowe mikroprezentacje dotyczące Entity Framework 4 oraz Windows Communication Foundation 4. [...]
about 2 months ago - 1 comment
Większość osób zaczynając swoją przygodę z Domain-Driven Design jest mocno zafascynowanych encjami. Tak też było w moim wypadku. Prawdę mówiąc, pierwszy system, który wydawało mi się, że buduję w oparciu o zasady DDD nie miał w ogóle rozróżnienia na encje i obiekty wartości. Tych ostatnich po prostu nie było.
Jeśli ktoś zaczął czytać mojego bloga w tym miejscu, [...]
about 3 months ago - 1 comment
Yesterday I came across the idea of totally automating domain persistence. There are out there plenty of convention-based persistence frameworks for ActiveRecord (like the Ruby on Rails one), but there is no equivalent solution for the Domain Model (as defined by Eric Evans Blue Book).
Your first thought may be that it is because domain model [...]
about 4 months ago - No comments
Kilka dni temu okazało się, że będziemy realizować zupełnie nowy projekt. Dostałem dokument ze wstępną analizą wykonalności, na którego podstawie miałem przygotować zarys architektury rozwiązania wraz ze wstępnym modelem domeny.
Z miejsca zacząłem rysować na tablicy encje i value object’y, łączyć je w agregaty, szukać abstrakcji. Niestety im bardziej się zagłębiałem w temat tym wynajdywane przeze [...]
about 4 months ago - 7 comments
Inversion of control is constantly a hot topic. So are domain model and domain-driven design. How about combining these into one hot post? Yeah, combining posts is easy compared to combining the patterns. I will focus on particular type of inversion of control — the dependency inversion.
The problem
You are building a system. One day you [...]
about 4 months ago - 3 comments
Jak już wspominałem kilka postów temu, ponowna lektura części Strategic Design z książki Erica Evansa pomogła mi usystematyzować swoją aktualną wiedzę na temat DDD. Dziś chciałbym się z Wami podzielić dalszą częścią mojego odkrycia.
Warstwa możliwości (capabilities) świetnie nadaje się do tworzenia encji warstwy operations.
O co chodzi? Jakiś czas temu Udi Dahan pisał o tym, że [...]