Masakra Javy wyjątkową monadą II

Część pierwsza W poprzedniej części omówiliśmy czym jest monada oraz określiliśmy co chcemy zaimplementować. Zgodnie z obietnicą w tej części zajmiemy się implementacją poszczególnych metod. Na początek jednak utworzymy sobie dwie klasy, które będą reprezentować stan. Klasy Success i Failure Listing 1. Implementacja klas wewnętrznych public abstract class Try<T> { ///… private static final class […]

Masakra Javy wyjątkową monadą

Wraz z wejściem Javy 8 i jej funkcyjnych elementów otrzymaliśmy też możliwość pobawienia się monadami. Monada to jest takie „coś” pochodzące z teorii kategorii co spełnia pewne prawa (definicja przez spejsonizację). Nie chcę tu wnikać w szczegóły, bo zarówno wiki jak i różne artykuły po sieci rozsiane tłumaczą co i jak. W świecie Javy sprowadza się […]

Blogowa wiosna, czyli powtórka z rozrywki

Była sobie kiedyś dawno temu akcja 50 dni do Euro. Była, minęła fajne to było, bo wrzucało w pewien tryb pracy. Później przy okazji Devcrowda 2014 Jacek Laskowski opowiedział o podobnej zabawie, ale polegającej na możliwie najdłuższym codziennym commitowaniem do githuba. To było też mocne, bo znowuż, wymagało systematyczności i ciągłej pracy. Tak się zastanawiam […]

Spring Boot postanowił zepsuć Mavena

Jest sobie tak, że Spring Boot to fajna rzecz. W połączeniu z kilkoma prostymi dodatkami w rodzaju AngularJS i HSQLDB idealnie nadaje się do napisania aplikacji pokazowej na jakiś wykładzik. Tym razem trafiło na wykład o CI/CD zatem potrzebowałem skonfigurować kilka rzeczy. Jedną z nich jest maven-resource-plugin, który umożliwia m.in. podmianę treści plików w czasie […]

Brak czasu to wymówka – no nie do końca…

Spotkałem się nie raz ze stwierdzeniem takim jak w tytule. Zazwyczaj pada ono z ust osoby, która ma… hm… uregulowany dzień. Brak czasu nie oznacza, że masz go za mało Brak czasu oznacza zazwyczaj, że nie zarządzasz swoim czasem. Jak to nie zarządzam swoim czasem? Ja przecież doskonale nim zarządzam… No niekoniecznie. Przede wszystkim ilość […]