Wybór języka

Java

W czwartek 22 października, w ramach JAVIPS online, miałem niekłamaną przyjemność wzięcia udziału w zlocie tytanów, których przedstawiać nikomu nie trzeba
W dawnych mrocznych czasach musieliśmy czekać 3-4 lata, by zobaczyć nową wersję Javy ze zmianami w API, składni i JVM. Obecnie mamy dwa duże wydania każdego roku! Czy możemy korzystać z tych wydań przed pojawieniem się kolejnego LTSa? Chcesz wiedzieć, co się wydarzyło od czasu Javy 11? Rekordy? Wyrażenia switch? Pattern matching? Jakieś zmiany w NullPointerException? Nowe funkcje w API? O co chodzi z Shenandoah i ZGC? AppCDS, żeby przyspieszyć start?
Minęło kolejne pół roku, kolejne wydanie nowej wersji Javy™ za nami. Zdaniem wielu “Java jest wolna”. Okazuje się, że rozwój Javy jest tak “wolny”, że kolejne wydania nie są tylko podbiciem wersji, bo mogą znacząco zmieniać reguły gry. To dobry powód na kolejny deep dive w Javie. Będzie mowa o: ZGC i Shenandoah w gotowości produkcyjnej (jeśli kto nie lubi epok lodowcowych) dopasowaniu do wzorca z instanceof (zwane również smart casting) klasach zapieczętowanych (czyli nowym wymiarze widoczności typów) klasach ukrytych (tak bardzo, że same siebie nie widzą) blokach tekstowych, które pozwalają łatwo deklarować napisy bardziej skomplikowane od “Hello World!
Java 14 przyniosła nam Rekordy (poza wieloma innymi ciekawymi rzeczami). Dla wielu osób to powód, by twierdzić “koniec z generowaniem getterów dla JavaBeans” albo nawet “Lombok umarł”. Czy rzeczywiście tak jest? Co można zrobić z rekordami, czego nie można? Co z refleksją i serializacją? Prezentacja nie została jeszcze nagrana po polsku (ma się to zmienić w czerwcu 2020), pojawiła się w czasie AllTheTalks.online.
W mrocznych czasach musieliśmy czekać 3-4 lata, żeby zobaczyć nową wersję Javy. Teraz mamy dwa duże wydania każdego roku! Nowości z Javy możemy wykorzystać przed wydaniem kolejnego LTSa. Do rzeczy… Masz ochotę zobaczyć, co się stało w Javie 14? Wyrażenia switch osiadły na dobre? Czy teraz już nie będzie NPE? Rekordy? Pattern matching? Bloki tekstowe? Jeśli wydają Ci się interesujące, dajmy razem nura w te nowości! Prezentacja pojawiła się w tej formie (Deep Dive) na WrocławJUG i WarszawaJUG.
W mrocznych czasach musieliśmy czekać 3-4 lata, żeby zobaczyć nową wersję Javy. Teraz mamy dwa duże wydania każdego roku! Nowości z Javy możemy wykorzystać przed wydaniem kolejnego LTSa. No dobrze, ale co się wydarzyło od czasu Javy 11? Wyrażenia switch? Bloki tekstowe? Nowe funkcje w klasie String, w Streams i innych API? O co chodzi w Shenandoah and ZGC? AppCDS by uruchamiać aplikacje szybciej? Jeśli wydają Ci się interesujące, dajmy razem nura w te nowości!
Nieodwołalnie nastał czas Javy 11+. (Gdyby twój szef jeszcze nie zauważył… ;-)) Prelekcja o tym jak udało się przenieść prawdziwe aplikacje serwerowe do Javy 11. Co i jak trzeba było zrobić, jak przekonać biznes, co nie było wymagane, wnioski dla innych. Niestety wersja po polsku nie została nigdzie opublikowana. Prezentacja (w różnych formatach i długościach) gościła m. in. na Devoxx Poland, Devoxx Ukraine, Devoxx Belgium, CodeMotion Milan, Java Developer Days, CoffeeJUG Lviv, 4Developers, Wrocław JUG i innych.
Istnieje 10 rodzajów ludzi: ci, którzy już logują i ci, którzy dopiero będą. ;-) Ale co może być fascynującego w logowaniu? To tylko dodawanie wpisów z określonym poziomem do jakiegoś pliku w /var/log, po co w ogóle ta prezentacja? Cóż, zwyczajne dodawanie linii do /var/log i śledzenie ich przy pomocy tail -f albo przeszukiwanie grepem jest takie… w stylu lat osiemdziesiątych i niewydajne. Poznajcie Grayloga: scentralizowany i rozproszony system do zarządzania dziennkami.
System.out.println("Czy dobrze jest tak logować?"); logger.warn("Oczywiście nie!"); Logować czy nie logować: to NIE jest pytanie! Postawmy sprawę jasno: wypluwanie wiadomości z dziennika bezpośrednio na wyjście standardowe / konsolę jest nie do przyjęcia. Wszyscy chcielibyśmy żyć w idealnym świecie, w którym zarówno nasze programy, jak i ich użytkownicy, zachowują się przewidywalnie. Ale rzeczywistość pokazuje coś zgoła odmiennego: mają miejsce wypadki, których nie sposób przewidzieć, zatem powinniśmy zrobić co w naszej mocy, by się na nieprzewidywalne jakoś przygotować.

Wybór języka