Już lato…

Szybko minęło. W sumie 96 wpisów w ramach blogowej wiosny… Gdy zabierałem się za ten cykl, to nie zauważyłem, że będzie to około 10% wszystkich wpisów na blogu. To było dużo pracy. Były święta i długie weekendy. Jeździliśmy po Polsce i zwiedzaliśmy. Czasami trzeba było „wyprodukować” kilka tekstów w przeciągu jednego dnia. Jednak udało się. […]

Szkolenie z Kotlina

Małe, 3 godzinne szkolenie z Kotlina już w ten czwartek 🙂 REJESTREACJA Gdzie? Wrocław, pl. Konstytucji 3 Maja 3, budynek Silver Tower 13 piętro 13 piętro (zajebisty widok na Wrocław): Wejście od ulicy Dąbrowskiego, drzwi obok krasnoludka. Kiedy? 23 czerwca (i później zapewne będzie powtórka) startujemy o 17:30 od lunchu, zatem jak chcesz coś wszamać, […]

Pattern matching w Javie z Javaslang IV

Poprzednie części: Pattern matching w Javie z Javaslang I Pattern matching w Javie z Javaslang II Pattern matching w Javie z Javaslang III Początkowo chciałem włączyć temat tworzenia własnych wzorców do poprzedniego wpisu. Jednak ze względu na konieczność zrobienia kilku rzeczy, bez których będzie nam ciężko, postanowiłem wyłączyć ten temat do osobnego wpisu. Dodatkowe zależności […]

Pattern matching w Javie z Javaslang III

Poprzednie części: Pattern matching w Javie z Javaslang I Pattern matching w Javie z Javaslang II Dopasowania wartości z pierwszej części oraz predykatów z drugiej, to nie jedyne możliwości, jakie daje nam Javaslang. Dziś przyjrzymy się wzorcom, czyli specjalnym obiektom, które opisują proces dekonstrukcji danego obiektu tak, by można było go wykorzystać w dopasowaniu. Poznaliśmy […]

Pattern matching w Javie z Javaslang II

Poprzednie części: Pattern matching w Javie z Javaslang I Dopasowanie wzorców do wartości jest w sumie proste. Podobny efekt można uzyskać stosując mapy. Jednak Javaslang udostępnia też API, w którym dopasowanie oparte jest o predykaty. Przy czym są to predykaty biblioteki, a nie Javy 8. Listing 1. Dopasowanie z wykorzystaniem predykatu public void predicates() { […]

Pattern matching w Javie z Javaslang I

Gdy kilka dni temu wrzuciłem wpis o tuplach, prawie od razu pojawiły się pytania: hmmm…. a do czego takie dziwne konstrukcje ? taka sztuka dla sztuki Samodzielnie krotki rzeczywiście są mało przydatne. Co prawda czasami warto ich używać np. gdy potrzebujemy POJO, a nie można go stworzyć albo chcemy sobie zapewnić kolejność typów w strukturze. […]

Lenistwo ponad wszystko

Lenistwo to cnota programisty. Tylko leniwy programista zrobi daną rzecz porządnie za pierwszym razem, ponieważ jako istota leniwa nie będzie chciał wracać do nudnego zadania, a skupić się na czymś ciekawszym. Javaslang udostępnia nam klasę Lazy, która opakowuje leniwie wyznaczaną wartość. Motywacja Podobnie jak w przypadku memoryzacji funkcji chcemy zapamiętać wynik ciężkich obliczeń, by nie […]

Memory z funkcjami

Chyba nie pozostaje mi nic innego jak tłuc tematykę Javaslang w najbliższych dniach. Tego typu maratony mają tę zaletę, że można się dużo i szybko nauczyć. Dziś zapamiętywanie wyników działania funkcji. Jest to jeden z idiomów, które można zaimplementować samodzielnie, albo wykorzystać gotowe rozwiązanie. Funkcja niezmienną jest Przynajmniej funkcja, która jest czysta, czyli nie ma […]

Mały lifting funkcji

Na początek małe wprowadzenie teoretyczne. Istnieją funkcje, których dziedzina jest w jakiś sposób ograniczona do pod zbioru obiektów należących do danego typu. Najlepszym przykładem jest dzielenie (dla uproszczenia liczb całkowitych), które działa o ile dzielnik nie jest zerem. Wynik takiej operacji jest nieokreślony, albo najzwyczajniej błędny. Jeżeli przenosimy taką funkcję do kodu to możemy: Stworzyć […]

Naprawianie Javy 8 – krotki

Java 8 dała nam wiele wspaniałych rzeczy. Jednak nadal nie dostarczyła nam API krotek (ang. tuples). Z pomocą przychodzą oczywiście różne biblioteki. Chociażby JavaTuples, którą należy już nazywać Java Truples, bo nie była aktualizowana od dawien dawna. Choć ostatnio dorzucili… konfigurację OSGi. Inną biblioteką jest osławiony Javaslang. Zobaczmy co można z jej pomocą uzyskać. Tworzenie […]