Kolejny post z serii o Bounded Contextach - jak konteksty mają się do architektury zdarzeniowej.
Sztuka programowania 660 dni, 16 godzin, 10 minut temu 128 źrodło rozwiń
Co zwykle robicie, gdy chcecie porównać jakieś stringi? Np. w takim języku, jak niemiecki, gdy nie zawsze dwa słowa są identyczne?
Sztuka programowania 663 dni, 16 godzin, 12 minut temu 131 źrodło rozwiń
Może wydawać się, że aplikacja konsolowa to taki potworek gdzie z każdej strony atakują nas typy statyczne - to nie musi być prawda! W tym artykule pokażę jak skonfigurować Dependency Injection w aplikacji konsolowej w .net core 2.0.
Sztuka programowania 667 dni, 15 godzin, 41 minut temu 113 źrodło rozwiń
In this article we are going to focus on another fundamental concepts of microservice based architecture – api gateways.
Sztuka programowania 673 dni, 16 godzin, 17 minut temu 137 źrodło rozwiń
Krótki opis jak wyglądają typy anonimowe w rzeczywistości.
Sztuka programowania 677 dni, 16 godzin, 43 minuty temu 80 źrodło rozwiń
Pisząc metody powinniśmy wyodrębniać niskopoziomowe operacje do osobnych metod. Krótka myśl po pewnym code review...
Sztuka programowania 681 dni, 16 godzin, 35 minut temu 66 źrodło rozwiń
Dlaczego niedbanie o jakość kodu ma fatalny skutek dla planowania.
Sztuka programowania 683 dni, 16 godzin, 10 minut temu 203 źrodło rozwiń
Przypisanie istniejącego obiektu do innej zmiennej niesie ze sobą pewne ryzyko. Należy być świadomym, czym różni się i co zawiera w sobie typ referencyjny, a co typ wartościowy. O typach wartościowych pisałem już nieco podczas omawiania struktur, w tym materiale. Tam też przedstawiłem problem przypisywania typów referencyjnych do innej zmiennej, który zaraz przypomnę.Przypisywanie typów wartościowych Jak sama nazwa wskazuje typy te zawierają w sobie wartość, która zostaje im przypisana. Stwórzmy w naszy...
Sztuka programowania 688 dni, 16 godzin, 42 minuty temu 130 źrodło rozwiń
Dzisiaj, bez oficjalnej definicji. Jedynie wspomnę o tym, o czym – w kontekście Interface Segregation Principle – należy wspomnieć. Zasadniczo ISP mówi o „rozczłonkowaniu” dużych, wielozadaniowych kontraktów i interfejsów na mniejsze, posiadające jedną konkretną odpowiedzialność. Dzięki czemu, każdy element który konsumuje taki interfejs, ma dostęp tylko do określonej funkcjonalnośći. Intencją ISP jest utrzymanie systemu luźnych powiązań między obiektami, ułatwienie konserwacji systemu, testowania, czy ...
Sztuka programowania 688 dni, 16 godzin, 42 minuty temu 137 źrodło rozwiń
Sztuka programowania 689 dni, 16 godzin, 22 minuty temu 152 źrodło rozwiń
Operacje na zbiorach matematycznie i Linq Pisząc o Joinach chciałam dodać teorię zbiorów do całości obrazu. Jednak okazało się, że patrzyłam na to troszkę źle. Relacje pokazywane na rysunkach zbiorów nie odnoszą się do samych JOIN'ów, a jedynie do elementu/zmiennej/zbioru zmiennych które łączą dwie kolekcje. Użyjemy tego samego przykładu co poprzednio. Teoria zbiorów ma zastasowanie tylko do TypeId ponieważ to był zawsze element łączący w Joinach. Jeśli jednak porzucimy myślenie sqlami ...
Sztuka programowania 691 dni, 14 godzin, 48 minut temu 148 źrodło rozwiń
Feature Toggle (Feature Switch, Feature Flag) to technika umożliwiająca modyfikowanie zachowania systemu w środowisku testowym lub produkcyjnym. W powyższym wpisie w ramach koncepcji feature toggles dzielę na dwie kategorie release toggles i bussines toggles.
Sztuka programowania 694 dni, 16 godzin, 17 minut temu 220 źrodło rozwiń
REST API Data validation using FluentValidation and Pipeline Pattern. Implementing Problem Details standard.
Sztuka programowania 694 dni, 16 godzin, 17 minut temu 183 źrodło rozwiń
Sztuka programowania 695 dni, 16 godzin, 14 minut temu 176 źrodło rozwiń
In this article we will design internal architecture of non-trivial microservice that is responsible for both managing its data state and exposing it to the external world. Basically our microservice will be responsible for creation and various modifications of its data and also will expose API that will allow other services and applications to query for this data.
Sztuka programowania 695 dni, 16 godzin, 14 minut temu 227 źrodło rozwiń
In this article we are going to focus on service discovery, which is one of the fundamental concepts of microservice based architecture. Service discovery is a mechanism that allows services to find each others network location. There are many possible implementations of this pattern, but in this article we will focus on implementation that consist of Service Registry component and Service Registry Clients.
Sztuka programowania 695 dni, 16 godzin, 14 minut temu 222 źrodło rozwiń
Dziś krótki i nieplanowany wpis z cyklu „ku przestrodze”, a będzie o… polu statycznym, które skutecznie zmieniło moje plany dotyczące ubiegłego wieczoru (ok 2h debugowania). Nie ma jednak tego złego, prawda? Ja mam nauczkę, a Ty drogi czytelniku być może też wyniesiesz z tego coś dobrego. Zacznijmy od tego, aby odpowiedzieć sobie po co i kiedy stosować słowo kluczowe static? Myślę, że każdy, czy to w szkole, na uczelni, na kursie czy w p...
Sztuka programowania 698 dni, 16 godzin, 39 minut temu 257 źrodło rozwiń
Tym razem jednak skupiliśmy się na definicji kilku dobrych praktyk wspomagających tworzenie testów jednostkowych. Takich testów, które dobrze weryfikują implementacje, zapewniają jakość oraz łatwo jest je utrzymywać. Jakie dobre praktyki warto stosować podczas pisania testów jednostkowych? Wśród popularnych aspektów jak zasady FIRST czy grupowanie implementacji testu w trzy grupy – Given, When, Then pojawiły się także inne warte uwagi techniki. Jesteś ciekawy jakie? To serdecznie zapraszam Cię do odsłu...
Sztuka programowania 698 dni, 16 godzin, 39 minut temu 108 źrodło rozwiń
Want to see an example of implementing IEquatable and usage of protobuf? Jump in! :)
Sztuka programowania 698 dni, 16 godzin, 39 minut temu 46 źrodło rozwiń
Luźne przemyślenie o sagach - na podstawie tweetu Udiego Dahana i prezentacji Adama Ralpha.
Sztuka programowania 701 dni, 15 godzin, 13 minut temu 182 źrodło rozwiń