DDD - Domain Model Encapsulation and Persistence Ignorance with Entity Framework 2.2
Strona głównaUżytkownik
asciiBlade | użytkownik
Sztuka programowania 2107 dni, 2 godziny, 33 minuty temu 159 źrodło rozwiń
Używając FluentAssertion musimy zwracać uwagę w którym miejscu użyjemy Should(). W zależności od położenia Should() błędy zwracane z asercji mogą być lepszej lub gorszej jakości.
Sztuka programowania 2110 dni, 2 godziny, 19 minut temu 128 źrodło rozwiń
Okazuje się, że LSP można naruszyć na wiele sposobów, czasami bardzo trudnych do wyśledzenia, a sztampowe omówienia dostępne powszechnie pomijają najważniejsze aspekty literki L z SOLID’a. Warto wspomnieć, że LSP pomaga nam również lepiej modelować biznesowy kontekst aplikacji, gdyż zmusza nas do odpowiedzi na pytania o relacje pomiędzy obiektami (mam tutaj na myśli głównie dwa ostatnie punkty: inwariant i zasadę historii).
Sztuka programowania 2129 dni, 2 godziny, 43 minuty temu 127 źrodło rozwiń
Od wielu lat używam viewmodeli do przekazywania danych do widoku – niezależnie od tego, czy to aplikacja desktopowa w WPF, czy webowa w ASP.NET MVC. Do tego jeszcze Automapper do mapowania danych na viewmodele. Niestety mapowanie z wykorzystaniem metody Map obiektów z Entity Frameworka bardzo często ma swoje negatywne konsekwencje (na ogół pobieramy zbyt dużo danych do aplikacji). Jednym z rozwiązań tego problemu jest skorzystanie z metody ProjectTo z Automappe...
Bazy danych i XML 2143 dni, 1 godzinę, 54 minuty temu 276 źrodło rozwiń
Would be post-mortem finalization available thanks to phantom references useful in .NET? What is your opinion, especially based on your experience with the finalization of your use cases? Please, share your insights in comments!
Czym się różni typ od klasy? Czy podtyp koniecznie musi dziedziczyć ze swojego nadtypu? Czy dziedziczenie z klasy bazowej wystarcza, aby być podtypem?
Sztuka programowania 2144 dni, 2 godziny, 8 minut temu 351 źrodło rozwiń
Brak porannej kawy to proszenie się o błędy :) Tutaj opisuje jeden taki błąd który z braku kawy wynikał i co zrobiłem żeby w przyszłości się nie powtórzył. TLDR: IReadOnlyList
Sztuka programowania 2145 dni, 2 godziny, 43 minuty temu 127 źrodło rozwiń
Ten post to mieszkanka różnych przemyśleń na temat użycia Maybe (Option / Optional) w kodzie produkcyjnym i ogólnie programowania funkcyjnego w C#.
Sztuka programowania 2149 dni, 2 godziny, 30 minut temu 114 źrodło rozwiń
Event Storming nie jest narzędziem skierowanym jedynie do problemów informatycznych. Zobacz jak radzi sobie z poprawą pracy organizacji lub firmy.
Grypa skłania do blogowania ;) O tym jak wyglądają domyślne komunikaty błędów z NSubstitute i jak by je tu poprawić...
Sztuka programowania 2170 dni, 2 godziny, 34 minuty temu 204 źrodło rozwiń
Krótki post przytacza 3 wady dziedziczenia przy projektowaniu komponentów.
Architektura 2170 dni, 2 godziny, 34 minuty temu 153 źrodło rozwiń
O tym że using toleruje nulle i że czasami można to wykorzystać...
Sztuka programowania 2184 dni, 2 godziny, 15 minut temu 210 źrodło rozwiń
In my second post about Azure Functions 2.0 extensibility I'm taking a closer look at creating custom triggers.
Rzadko zdarza mi się pisać o ficzerach języka C#, a już na pewno nie o takich, które są dostępne od wielu lat. Niemniej, dziś miałem okazję ponownie wykorzystać ciekawą i mniej znaną „odsłonę” enum-ów dostępną poprzez atrybut FlagsAttribute, która być może okaże się dla Ciebie przydatna. Klasyczne użycie typów wyliczeniowych Gdybym z własnych obserwacji miał powiedzieć kiedy typy wyliczeniowe są stosowane, odparłbym „kiedy bool nie wystarcza”. Zazwyczaj bowiem, zaczyna się od właśnie od zmiennej typu ...
Sztuka programowania 2191 dni, 2 godziny, 42 minuty temu 305 źrodło rozwiń
Have you ever been in a situation when you discovered an exception in the logs that forced you to spend the next couple of minutes - or even hours - figuring out what exactly went wrong? The message was very cryptic and the only useful information that guided you to the crime scene was a stack trace. And after arriving there, you still had no idea what had really happened and what was the culprit. The most frustrating part is that in many cases the reason is very trivial and could be diagnosed immediatel...
Sztuka programowania 2225 dni, 50 minut temu 139 źrodło rozwiń
Za każdym razem gdy definiujesz funkcję lokalną zadaj sobie pytanie czy nie lepiej dodać metodę lub właściwość do obiektu
Sztuka programowania 2233 dni, 3 godziny, 40 minut temu 59 źrodło rozwiń
Token Authentication Management (JWT) in Angular
Dziś krótki wpis, który być może okaże się dla Ciebie bardzo przydatny. Chodzi o jedną z technik programowania defensywnego, którą bardzo często możesz spotkać w kodzie C# (z uwagi na jego specyfikę), a mianowicie null-check (ogólniej asercja). Spójrz na poniższy kod...
Sztuka programowania 2243 dni, 3 godziny, 14 minut temu 314 źrodło rozwiń
Dodajemy pre-request script który automatycznie pobiera OAuth access token.