Today I would like to show you a really cool way to validate MediatR commands and queries using FluentValidation.
Strona głównaUżytkownik
jbarczyk | użytkownik
Sztuka programowania 1308 dni, 4 godziny, 6 minut temu 142 źrodło rozwiń
Jako że już od dłuższego czasu mam okazję pracować z Cosmos DB, to wydarzenie Azure Cosmos DB Conf wyjątkowo zwróciło moją uwagę. W dużej mierze liczyłem na poznanie ciekawych technik, które usprawnią codzienną pracę z tytułową usługą. Może konferencja nie do końca spełniła te oczekiwania, ale w zamian dowiedziałem się o kilku ciekawych metodach i technologiach, które opiszę w tym wpisie.
This article describes the naming convention I use in projects where CQRS is applied. After creating a couple of projects we’ve finally reached the convention which works great for my team. Let’s try to point out how it looks.
Sztuka programowania 1301 dni, 3 godziny, 58 minut temu 112 źrodło rozwiń
Mikroserwisy muszą być wspomniane przynajmniej raz na kilka artykułów, podobno w innym wypadku blog jest uznawany za archaiczny. Korzystając z tej architektury łatwo jest jednak strzelić sobie w stopę. Systemy oparte na zdarzeniach mają wiele zalet - niski coupling, ułatwiona komunikacja z biznesem oraz duża elastyczność.
Architektura 1333 dni, 4 godziny, 7 minut temu 135 źrodło rozwiń
I oto jest on – 69. odcinek. I od razu ostrzeżenie, to jest długi odcinek. Dłuższy niż dotychczasowy rekordzista więc przygotujcie się na długi spacer. A w tym odcinku z naszym gościem rozmawiamy o architekturach opartych o zdarzenia. Miłego słuchania.
Architektura 1395 dni, 16 godzin, 14 minut temu 75 źrodło rozwiń
Durable Functions to rozszerzenie standardowych Azure Functions pozwalające na pisanie stanowych funkcji w bezserwerowym środowisku. Jak opisuje Microsoft: Behind the scenes, the extension manages state, checkpoints, and restarts for you, allowing you to focus on your business logic. Co oznacza to w praktyce? Rozszerzenie Durable Functions pozwala nam tworzyć długotrwałe procesy. W tym wpisie zobaczysz teorię, praktykę jak i dwa przykłady z życia wzięte. Pozytywny i negatywny. Zaciekawiony? Zaprasza!
StartAutorzyNewsletterZyskasz czas na inne rzeczy! Wystarczy, że dołączysz teraz do programu w promocyjnej cenie 549 PLN brutto (wystawiamy FV 23%) w ciągu: Nie zwlekaj! DOŁĄCZ DO PROGRAMU POZNAJ DOCKER!FAQNowy moduł szkolenia jest udostępniany co tydzień (już teraz dostępne są dwa moduły Nic nie ryzykujesz! 21 dniowa gwarancja zwrotu pieniędzy bez pytań od dnia zakupu programu Wystawiamy faktury VAT Jeżeli masz pytania napisz do mnie [email protected]Dlaczego Poznaj Docker? Według Gartnera do 202...
Pierwszy techniczny artykuł w Cesarstwie-Dev, i od razu coś ekstra! Połączenie dwóch tematów, które są bardzo bliskie memu sercu – integracje z zewnętrznymi systemami oraz testy! To co? Zaczynajmy!
Sztuka programowania 1525 dni, 4 godziny, 21 minut temu 80 źrodło rozwiń
There are many things we can do to make the quality of our code better. We can do all kinds of tests like unit testing, integration testing, end to end tests but there is another way to improve code quality. In this post I will describe Pull Requests. Probably all of You have used them before but are we using them properly?
Sztuka programowania 1441 dni, 1 godzinę, 8 minut temu 60 źrodło rozwiń
Testy integracyjne stanowią ważną część naszego systemu. Pozwalają zweryfikować naszą aplikację w szerokim kontekście, włączając w to infrastrukturę. Testy kontrolerów zapewniają nam poprawne działanie warstwy wejściowej do naszej aplikacji.
Sztuka programowania 1438 dni, 2 godziny, 31 minut temu 122 źrodło rozwiń
Z reguły naszą logikę biznesową umieszczamy w klasach serwisowych. Czasem są one większe, a czasem mniejsze. Zastanówmy się, jak mógłby wyglądać nasz kod, gdybyśmy dla każdej metody z serwisu tworzyli osobną klasę. Wykorzystamy do tego bibliotekę MediatR. Jeśli ktoś się zastanawia po co, odpowiedź jest prosta: aby zwiększyć spójność i zmniejszyć sprzężenie. Na razie nie będziemy się zagłębiać w takie pojęcia jak CQRS czy CQS. Naszym celem jest rozbicie klas na mniejsze i zmiana tego, jak je wołamy. Po ty...
Sztuka programowania 1450 dni, 3 godziny temu 138 źrodło rozwiń
This article contains information about using Azure Active Directory credentials for login to Angular client-side with .Net core backend. This solution is based on JWT tokens (frontend and backend solutions can be on different hosts, so cookies auth methods by CORS policy is not the best choice in that case).
Sztuka programowania 1452 dni, 3 godziny, 13 minut temu 65 źrodło rozwiń
Zbliża się oficjalnie okres przygotowania do świąt. Czas wyciągnąć za duże, czerwone swetry, kupić skrzynkę mandarynek i odbierać od kurierów paczki dla rodziny. Nie znaczy jednak, że można przestać się rozwijać – nauka zawsze się przyda, konkurencja nie śpi. Nie chcąc być całkowicie Grinchem to dziś prezentuje artykuł o trochę innych paczkach 😉 Czym byłoby pisanie aplikacji bez paczek? NPM, Gradle, Composer, Cargo – każdy szanujący się ekosystem posiada oprogramowanie do zarządzania paczkami, wersjami...
It’s been a while since I published the latest article, but it’s high time to finally get into the topic of microservices for real. Does open source, .NET Core, distributed system, Docker and other cool words sound good to you? If that’s the case, stick with me and let me guide you through the world (or at least part of it) of microservices. This is going to be the very first article (an introduction) of the upcoming series.
Architektura 2330 dni, 2 godziny, 56 minut temu 213 źrodło rozwiń
W tym wpisie zajmę się tematem, który mam wrażenie bardzo często jest pomijany. To może niestety prowadzić do poważnych konsekwencji (utraty danych lub ich niepoprawności), które ciężko będzie namierzyć. Zobaczysz, w jaki sposób można rozwiązać ten problem dzięki optymistycznej współbieżności w .NET Core.Problem? Wcześniej czy później natrafimy na problem, w którym dwóch użytkowników/dwa procesy, czy jakieś inne elementy, będą próbowały zmienić w tym samym cza...
Bazy danych i XML 1470 dni, 3 godziny, 46 minut temu 161 źrodło rozwiń
Bardzo interesujący tydzień za nami! W końcu pojawił się .NET 5, a wraz z nim 3-dniowa konferencja pełna interesujących prelekcji! Kilka z nich było poświęcone projektowi Tye. Temat ten bardzo mnie zainteresował, więc postanowiłem samodzielnie spróbować użyć tego narzędzie. Efektem mojego eksperymentu jest wpis, który właśnie czytasz w Cesarstwie-Dev! Nie będę wchodził w techniczne szczegóły tego projektu, lecz pokażę kolejne efekty pierwszych kilku godzin pracy z Tye. Mam nadzieję, że jesteście równie z...
Sztuka programowania 1465 dni, 3 godziny, 39 minut temu 149 źrodło rozwiń
Spojrzenie na TDD przez pryzmat własnych porażek TDD czyli Test Driven Development to bez wątpienia najbardziej znana praktyka ze zbioru XP[1]. Sama koncepcja już leciwa, a jej pomysłodawca - Kent Beck - przedstawił jej fundamenty w książce z 2002 roku[2]. W telegraficznym skrócie można by rzecz, że sprowadza się do napisania testu, kt...
Sztuka programowania 1479 dni, 2 godziny, 50 minut temu 106 źrodło rozwiń
Pierwszy z tej serii wpis będzie zawierał wprowadzenie do wzorców, jak i opis mojego ulubionego wzorca o wspaniałej nazwie Dekorator. Wzorce projektowe to uniwersalny sposób na rozwiązanie powtarzalnego problemu. Dekorator pozwala na dynamiczne przydzielenie danemu obiektowi nowych zachowań.
Sztuka programowania 1473 dni, 3 godziny temu 165 źrodło rozwiń
Dane z Twitter można pozyskać na wiele sposobów, ale komu chce się pisać kod 😉. Szczególnie taki, który będzie działał 24/7. W Elastic Stack można w prosty sposób zbierać i analizować dane z Twitter’a. Logstash ma gotowe wejście do zbierania strumienia tweet’ów. Kafka Connect omawiana w poprzednim artykule również ma taką opcję, jednak Logstash może wysyłać dane do wielu źródeł (w tym do Apache Kafka) i jest prostszy w obsłudze.Spis treścihide1Środowisko Elastic Stack2Logstash Pipeline3Dane4KibanaTag Cl...
Czy warto móc uruchomić więcej funkcji za mniej $$$? Myślę że tak. Zapraszam do podróży do krainy optymalizacji Azure Functions.