Krótki opis jak wyglądają typy anonimowe w rzeczywistości.
Sztuka programowania 1733 dni, 6 godzin, 57 minut 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 1737 dni, 6 godzin, 49 minut temu 66 źrodło rozwiń
Dlaczego niedbanie o jakość kodu ma fatalny skutek dla planowania.
Sztuka programowania 1739 dni, 6 godzin, 25 minut temu 206 ź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 1744 dni, 6 godzin, 57 minut 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 1744 dni, 6 godzin, 57 minut temu 137 źrodło rozwiń
Sztuka programowania 1745 dni, 6 godzin, 37 minut 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 1747 dni, 5 godzin, 3 minuty temu 149 ź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 1750 dni, 6 godzin, 31 minut temu 222 źrodło rozwiń
REST API Data validation using FluentValidation and Pipeline Pattern. Implementing Problem Details standard.
Sztuka programowania 1750 dni, 6 godzin, 31 minut temu 183 źrodło rozwiń
Sztuka programowania 1751 dni, 6 godzin, 28 minut temu 177 ź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 1751 dni, 6 godzin, 28 minut temu 231 ź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 1751 dni, 6 godzin, 28 minut temu 243 ź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 1754 dni, 6 godzin, 53 minuty 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 1754 dni, 6 godzin, 53 minuty temu 108 źrodło rozwiń
Want to see an example of implementing IEquatable and usage of protobuf? Jump in! :)
Sztuka programowania 1754 dni, 6 godzin, 53 minuty temu 46 źrodło rozwiń
Luźne przemyślenie o sagach - na podstawie tweetu Udiego Dahana i prezentacji Adama Ralpha.
Sztuka programowania 1757 dni, 5 godzin, 28 minut temu 183 źrodło rozwiń
DDD - Domain Model Encapsulation and Persistence Ignorance with Entity Framework 2.2
Sztuka programowania 1758 dni, 5 godzin, 23 minuty temu 158 źrodło rozwiń
C# 8.0 brings us another nice feature called slicing. In order to make it possible, two new concepts are introduced: Indexes and Ranges. Let’s see how this tiny feature is supposed to make our life easier 🙂
Sztuka programowania 1758 dni, 5 godzin, 23 minuty temu 108 źrodło rozwiń
O dwóch sposobach tworzenia oprogramowania na przykładzie programu na antyczny komputer PDP-8 opowiada Wujek Bob Martin.
Sztuka programowania 1760 dni, 4 godziny, 56 minut temu 129 źrodło rozwiń
Krótko i na temat, czyli jak uruchomić polecenie powłoki systemowej bash w .NET Core na Ubuntu
Sztuka programowania 1760 dni, 4 godziny, 56 minut temu 60 źrodło rozwiń