Behavior Driven Development – dosyć niedawno nawet słyszałem, że to Test Driven Development Done Right 🙂 Co, jak, czemu i po co? Czytaj by się dowiedzieć jak ja to widzę :)
Sztuka programowania 2593 dni, 6 godzin temu 222 źrodło rozwiń
Jeśli API, z którego musisz skorzystać dostarcza Ci dane w 'brzydkiej' formie, zmapuj je. Dodaj warstwę abstrakcji i ukryj złe struktury.
Sztuka programowania 2593 dni, 6 godzin temu 158 źrodło rozwiń
Kolejne zadanie rekrutacyjne na tapecie. Autor przedstawia kilka możliwych rozwiązań, wraz z analiza wad i zalet każdego z rozwiązań.
Sztuka programowania 2593 dni, 6 godzin temu 298 źrodło rozwiń
Tym razem omówiona ciekawa właściwość języka python. Na przykładzie zadania rekrutacyjnego
Sztuka programowania 2593 dni, 6 godzin temu 208 źrodło rozwiń
Xamarin.Forms nie jest lekiem na całe zło i w praktyce nie da się za pomocą tej technologii zrobić w pełni natywnego efektu, stosując dostępne standardowo kontrolki. Idea tego rozwiązania jest inna. Do worka zwanego Xamarin.Forms trafiają takie elementy, które da się jakoś uwspólnić pomiędzy obsługiwanymi systemami. Innymi słowy po użyciu określonej kontrolki i tak w rzeczywistości zostanie wykorzystana ta natywna, która w danym systemie jest najbardziej zbliżona funkcjonalnie i wizualnie. I tak np. Form...
Sztuka programowania 2593 dni, 18 godzin, 59 minut temu 45 źrodło rozwiń
Krok po kroku opis rozwiązania zadania rekrutacyjnego. Zaczynamy od rozwiązania najprostszego i stopniowo je poprawiamy. Przykłady w c++
Sztuka programowania 2594 dni, 1 godzinę, 25 minut temu 477 źrodło rozwiń
There are many ways to perform a validation of our models living within the system. Whether there’s an incoming request from the user who would like to create an account or there’s a need to ensure about the correct amount of money in a bank transaction, the validation process should always (I really mean that) take place. In today’s post, I’d like to present one of the possible solutions that might help you validate your entities.
Sztuka programowania 2596 dni, 4 minuty temu 162 źrodło rozwiń
Klasa (immutable) Tuple istniała aż od .NET Framework 4.0. W C# 7.0 mamy jednak wsparcie dla tuple od strony języka. Jednym z problemów klasy Tuple było, że każda właściwość nazywała się kolejno Item1, Item2 itp. W tym wpisie dowiemy się jak to rozwiązano w C# 7.0
Sztuka programowania 2600 dni, 6 godzin, 7 minut temu 391 źrodło rozwiń
ASP .NETPiotr Zieliński1 Comment ASP.NET Core ułatwia w znaczący sposób IoC. Przede wszystkim wbudowano w framework dosyć prostą implementację IoC. Oznacza to, że w wielu przypadkach nie trzeba już instalować zewnętrznych framework’ow takich jak AutoFac. W pliku Startup znajdziemy metodę ConfigureServices: public void ConfigureServices(IServiceCollection services) { // Add framework services. services.AddApplicationInsightsTelemetry(Configuration); ...
Sztuka programowania 2600 dni, 6 godzin, 7 minut temu 278 źrodło rozwiń
Today we are going to have a little break from our CQRS/ES journey, but I hope you’ll like that article anyway. Meet Aspect-Oriented Programming! An approach that’s going to change the way of writing our code and more importantly will help us to keep it clean and simple (in most cases). The idea Writing the code we can often observe that the certain group of the non-business functionalities is copied in many areas, and moreover, it affects other parts of our system. Here we can include: creating datab...
Sztuka programowania 2600 dni, 6 godzin, 7 minut temu 168 źrodło rozwiń
Last time I wrote a post about the commands. Events are quite similar to the commands – the main difference between these 2 patterns is that the events are related to the things that have actually happened to our entity e.g. by invoking the command. They’re also a core part of the DDD (Domain Driven Desing) and can be easily implemented within our software solution.
Sztuka programowania 2601 dni, 23 godziny, 19 minut temu 165 źrodło rozwiń
Niedawno zacząłem praktyki, gdzie biorę udział w eksperymencie porównania 3 metodyk pisania oprogramowania: TDD, ITL i NUT. TDD spodobało mi się szczególnie, więc postanowiłem napisać tego posta i pokazać przykładowy workflow w TDD.
Sztuka programowania 2605 dni, 1 godzinę, 41 minut temu 288 źrodło rozwiń
Just how long does garbage collection take in .NET? Which generation takes longer?
Sztuka programowania 2605 dni, 1 godzinę, 41 minut temu 123 źrodło rozwiń
Od 2 miesięcy pracuję w nowej firmie i już widzę pozytywne rezultaty – och jak mi się chce! No i te nie pozytywne – och jak nie mam czasu! Ale ponieważ słabuję, w łóżku odpaliłem elixira. Co to, po co i co z tym dalej...?
Sztuka programowania 2608 dni, 6 godzin, 11 minut temu 237 źrodło rozwiń
What's faster in C#: setting an array by index or a generic list by index? Are you sure you know the correct answer?
Sztuka programowania 2610 dni, 4 godziny, 12 minut temu 151 źrodło rozwiń
Which one of us doesn’t like to give commands? It’s the natural way to ask (in a polite way) for a specific task that needs to be completed. Therefore, it shouldn’t be surprising that the command pattern can be also easily implemented within our software, which might provide some serious benefits in terms of loose coupling the existing code.
Sztuka programowania 2610 dni, 4 godziny, 12 minut temu 235 źrodło rozwiń
Tak, tak, tak. C# 6 jest już z nami od jakiegoś już czasu, ale w życiu nie jest tak kolorowo i nie wszyscy mogli przejść na nowego Visual Studio 2015 tuż po tym jak się ukazał. Dodatkowo nawet jeśli ktoś już przesiadł się na najświeższe IDE od MS, to i tak nie zawsze mógł używać nowości, które wpadły wraz z C# 6. Zatem dla niektórych będzie to przypomnienie, dla innych zapoznanie się z nowościami. Co więcej, w sieci jest wiele stron opisujących nowe elementy w C#, które... nie znalazły się w finalnym wy...
Sztuka programowania 2613 dni, 21 godzin, 16 minut temu 389 źrodło rozwiń
Test-Driven Development ma niezaprzeczalnie bardzo pokaźną liczbę zalet jednak jednym z problemów stojących na przeszkodzie we wdrożeniu i stosowaniu tej metodologii jest fakt, że pisanie testów jednostkowych wymaga większego nakładu czasowego programisty. Nie licząc czasu na zmianę sposobu myślenia oraz naukę zespołu, pisanie testów jednostkowych może trwać nawet dwukrotnie dłużej niż w sposób „beztestowy”.
Sztuka programowania 2618 dni, 15 godzin, 20 minut temu 198 źrodło rozwiń
TestyPiotr Zieliński2 Comments O testach UI, szczególnie w SpecFlow pisałem już kilka razy. Zawsze korzystałem z wzorca PageObject, chociaż nie wiedziałem, że ma on swoją nazwę. Czasami mam wrażenie, że na proste rzeczy wymyśla się “wzorce”. Muszę przyznać jednak, że uproszcza to często komunikację między programistami. Wzorce w końcu stanowią pewnego rodzaju słownictwo dla programistów. Zamiast opisywać coś w kilku zdaniach, można powiedzieć po prostu nazwę wzorca. PageObject pattern polega na tym, ż...
Sztuka programowania 2622 dni, 5 godzin, 48 minut temu 186 źrodło rozwiń
Zarówno o BDD, jak i TDD wiele razy już pisałem. Najważniejszą rzeczą w TDD jest sekwencja red-green-refactor. Zwykle BDD\TDD przybiera następującą postać: Zaczynamy od etapu BDD. Definiujemy wymagania za pomocą języka rozumianego zarówno przez programistów jak i jak BA\PO. Za pomocą Specflow możemy zdefiniować np. następujący test: Given I have entered 50 into the calculator And I have entered 70 into the calculator When I press add Then 120 sho...
Sztuka programowania 2622 dni, 5 godzin, 48 minut temu 128 źrodło rozwiń