Spotkanie PJUG - o tym po co nam RSocket oraz o piramidzie refaktoryzacji

Polish Java User Group
Polish Java User Group
Public group

Browar Lubicz

Lubicz 17J · Kraków

How to find us

Browar Lubicz, sala Dojrzewalnia (poziom +1)

Location image of event venue

Details

Serdecznie zapraszamy na pierwsze spotkanie w 2020 roku, które odbędzie się w nowym miejscu - Browarze Lubicz (sala Dojrzewalnia na poziomie +1).

We współpracy z firmą Nexocode (https://www.nexocode.com/) zapraszamy na nasze spotkanie, które odbędzie się 18 lutego od godz. 18:00 w Browarze Lubicz (ul. Lubicz 17J, https://browar-lubicz.com.pl/galerie/4,dojrzewalnia-wnetrza).

Tym razem naszymi prelegentami będą Piotr Kubowicz (https://pl.linkedin.com/in/pkubowicz) oraz Włodek Krakowski (https://pl.linkedin.com/in/wlodek-krakowski).

Pierwsza prezentacja będzie dotyczyć RSocket'a i dowiemy się podczas niej w jaki sposób możemy wycisnąć więcej szybkości z kodu wprowadzając Server-Sent Events, a także o przypadkach użycia, gdzie RSocket faktycznie wprowadza nową jakość. Druga prezentacja będzie dotyczyć piramidy refaktorycacji, która jak mówi jest bliźniakiem dla piramidy testów.

Szczegółowe opisy prezentacji poniżej. Obie prezentacje odbędą się w języku polskim.

Podczas spotkania przewidzieliśmy czas na networking, a na zakończenie spotkania rozlosujemy nagrody: licencje na oprogramowania, wejściówki na konferencję oraz książkę.

Nexocode (https://www.nexocode.com/) to przede wszystkim turkusowy zespół programistów i projektantów tworzących zaawansowane systemy informatyczne.
Każdy w Nexocode wnosi do swojej roli prawdziwą kreatywność codziennie decydując o kształcie projektowanych aplikacji, wykorzystywanych technologiach, a nawet kierunku działania i rozwoju firmy. Dzięki takiemu podejściu firma z sukcesami dostarcza dedykowane rozwiązania dla zewnętrznych klientów oraz tworzy własne produkty.

Piotr Kubowicz - posiada ponad 10 lat doświadczenia w pracy z Javą. Tworzy programy w wielu językach i działa w społeczności open source. Obserwacja wzlotów i upadków projektów, w których brał udział, nauczyła go, że sukcesu nie przynoszą cudowne technologie, ale zgrani ze sobą ludzie. Zbiera narzędzia i nawyki pozwalające programiście skupić się na istotnych rzeczach oraz bezpiecznie zapomnieć o innych. Walczy z magicznym kodem i szlifuje umiejętność pisania nudnych klas i metod.

Temat: Po co nam RSocket?
RSocket to reaktywny protokół sieciowy wspierany m.in. przez the Linux Foundation i twórców Springa. W Internecie możecie znaleźć dużo hype’u i aplikacji typu hello world, ta prezentacja ma na celu skupienie się bardziej na tym, jak RSocket może wpłynąć na działanie naszych aplikacji. Porozmawiamy, w jaki sposób możemy wycisnąć więcej szybkości z kodu pozostając przy “tradycyjnym” HTTP, ale wprowadzając Server-Sent Events, a także o przypadkach użycia, gdzie RSocket faktycznie wprowadza nową jakość.

Włodek Krakowski - jest niezależnym trenerem technicznym (www.refactoring.pl ) współpracującym z Bottega IT Minds. Czasem także programistą – szczególnie podczas swoich szkoleń z z refaktoryzacji oraz podczas ich przygotowywania. Głównie interesują go zagadnienia związane z tym jak dostarczać oprogramowanie wysokiej jakości.

Temat: Piramida Refaktoryzacji
O piramidzie testów już wszyscy słyszeliśmy… a piramida refaktoryzacji to jej bliźniak. Za pomocą piramidy testów ustanawiamy poprzez pokrycie testami zakres funkcjonalności / kodu którego strukturę będziemy zmieniać (moduły, pakiety, klasy). Następnie mając taki zakres korzystamy z jego lustrzanego odbicia na piramidzie refaktoryzacji, mając wiedzę jak wiele zmian refaktoryzacyjnych możemy wprowadzić startując od jej podstawy i wspinając się na jej najwyższy poziom który jest pokryty testami.

W ten sposób doświadczymy, że refaktoryzacja na wyższych poziomach abstrakcji (np. wprowadzanie wzorców projektowych) może mieć miejsce dopiero kiedy zadbamy o poziomy znajdujące się niżej (mniejsze metody, klasy i wyprowadzone interfejsy).

Koncept ten przedstawię na przykładach refaktoryzacji kodu znajdującego się w jednej klasie do wzorca Interpreter, Chain of Responsibility, Template.