JUnit 5 – Wstęp

JUnit 4 jest już stary. Został opublikowany gdzieś w okolicach 2006 roku. Ostatnia aktualizacja (4.12) to rok 2014. Sama biblioteka nie jest zła, jeśli chodzi o testy jednostkowe. Spełnia swoje zadanie i nie ma powodu by się do czegoś przyczepić. Przez ostatnie 11 lat zaszło trochę zmian w języku jak i w sposobach wytwarzania oprogramowania. […]

Monolit kontra mikroserwisy – obrazkowo

Monolit Mikroserwisy Kod jest dostępny na licencji MIT. Jednak niektóre rozwiązania mogą być objęte inną licencją. W takim przypadku jest, to zaznaczone. Artykuły są dostępne na licencji CC-BY. Jeżeli spodobał ci się ten wpis, to podziel się nim z innymi lub wesprzyj autora. Już za kilka dni będę mówił o JUnit 5 na kolejnej edycji […]

Zstąpienie Aniołów – Krucjata inna niż wszystkie

Tytuł: Zstąpienie Aniołów Autor: Mitchel Scanlon Rok: 2016 ISBN: 978-8-36165-644-9 Najtrudniejsza książka z serii Herezji Horusa za mną 😉 Jest inna. Po prostu. Gdy kilka lat temu czytałem recenzje Zstąpienia Aniołów, to przewijał się motyw nudy. Wersję angielską przeczytałem gdzieś 10 lat temu i jakoś nie pokochałem. Ostatnio wróciłem do tematu i przeczytałem polskie tłumaczenie. […]

Iterator filtrujący, czyli kontrakt iteratora w dwóch odsłonach

Dziś o tym, że kontrakt zawarty w dokumentacji można interpretować na wiele sposobów oraz dlaczego SRP jest istotne. Na 4p padło pytanie, jak ogarnąć problem iteratora, który będzie przy okazji filtrował kolekcję. Sama implementacja jest stosunkowo prosta: Listing 1. Iterator filrtujący public class FilteringIterator<T> implements Iterator<Optional<T>> { private final Iterator<T> iter; private final Predicate<T> predicate; […]

Zachłannie, leniwie, współbieżnie – czego nauczyłem się od Jose Valima

Warto jeździć na konferencje i słuchać mądrzejszych do siebie. Warto, ponieważ często nie dowiemy się nic nowego, ale sposób przekazania wiedzy pozwoli na uporządkowanie kilku rzeczy. Jose na tegorocznych LambdaDays opowiadał o GenStage i Flow. Jednak nie to jest najważniejsze. Jakby przy okazji omówił trzy różne podejścia do pracy z danymi. Podejście zachłanne Jest najprostsze. […]

Zmiany, zmiany, zmiany….

Zmiana jest w sumie jedna, ale za to duża. Od dziś cały blog będzie śmigał po https. Co to oznacza? Od strony użytkownika nic się nie zmienia, ponieważ jest też odpowiednia konfiguracja i wejście przez http, przekieruje was w odpowiednie miejsce. Powinno działać. Jeżeli jednak macie jakieś problemy albo przeglądarka krzyczy o niebezpiecznych zasobach, to […]

Trochę o mierzeniu kodu z jmh

jmh jest leciwym narzędziem. Jakoś w marcu stuknie mu już 4 lata. Ostatnio zwróciłem na nie uwagę przy okazji rozwiązywania problemu „czyj kod powinniśmy użyć, nasz czy hindusów”. Wiadomo, że do rozwiązywania tego typu problemów najlepiej sprawdzają się jakieś w miarę niezależne od nas narzędzia. Jako że pisanie mikro benchmarków jest sztuką, narzędzie powinno ładnie […]

Lambda Days 2017 – czego tu nie było…

Tegoroczna edycja Lambda Days pokazała, że programowanie funkcyjne ściąga pod swoje skrzydła coraz większą rzeszę programistów. Ponad 400 uczestników, trzy ścieżki, dwa dni. To jest już coś. W tej relacji nie chcę omawiać poszczególnych wystąpień. Klasyczna formuła ta nie do końca pasuje do mojego uczestnictwa w konferencji. W zamian pozwolę sobie na podzielenie relacji według […]

Seksizm z certyfikatem koszerności

Była sobie aferka z kalendarzem Sii. Była i przebrzmiała. Znajome z IT albo nie widziały w tym nic złego, albo wręcz przeciwnie. Widziały w tym całe spektrum opresji. Ta druga grupa dodatkowo twierdziła, że ta pierwsza grupa jest ślepa. Padło też określenie SeksizmW. Rzecz w tym, że część pań ma mentalność Mei (jak uważałeś w […]

Kotlin z JPA – rzeczy nieoczywiste

Zgodnie z tradycją kończąc szkolenie, pokazuję coś ekstra. Dziś tym czymś ekstra była implementacja prościutkiego silnika blogowego. Samo zadanie jest „egzaminem końcowym” kursu JPA. Nie tworzymy niczego ambitnego, bo mamy tylko 4 godziny na to zadanie. Uczestnicy mają samodzielnie przygotować klasy, skonfigurować zależności i odpalić całość. Moja wersja różniła się jednak od tej, którą mieli […]