https://www.gravatar.com/avatar/306d401b2a8c0efe0996fec60e0c90aa?s=240&d=mp

My coding journey

Dzień dobry!

Mam na imię Kamila. Witam Cię serdecznie na stronie kamilachyla.com.

Znajdziesz tu garść moich notatek.

Piszę głównie o programowaniu (EN/PL): (Java, Python, Go, JavaScript), w wolnych chwilach bawię się sztuką generatywną (p5js) oraz piszę i ilustruję książeczki dla swoich dzieci.

Zapraszam!

Jeśli nie ThreadLocal to co? ScopedValue!

Co to jest ScopedValue? ScopedValue to wartość, która może być widoczna i używana w metodach, a która nie została do nich przekazana jako ich parametr. Dotychczas taką rolę w języku Java pełniły zmienne ThreadLocal. Przyjrzyjmy się im odrobinę, żeby odświeżyć swoją wiedzę, a później popatrzymy, co nowego wnoszą ich nowoczesne zastępniki, czyli zmienne ScopedValue. Co to jest zmienna ThreadLocal? Zmienne ThreadLocal są deklarowane zazwyczaj jako prywante zmienne globalne (pola statyczne) i dają gwarancję, że wartość, którą z nich odczytujemy (metodą get()) to ta sama wartość, która została w nich zapisana (metodą set()) w tym samym wątku (lub ta, którą zwróciło wywołanie metody protected initialValue() zwracającej wartość inicjującą zmienną ThreaLocal).

Virtual Threads w Javie 21

Trochę historii Wiecie, że w Javie możliwe było programowanie współbieżne już w wersji 1.0? Oczywiście, przy użyciu klasy Thread. Możliwość ta pojawiła się w 1996 (obchodziłam w tym roku osiemnaste urodziny!), jednak dość szybko się okazało, że nie jest ono wcale proste… Większe i bardziej złożone aplikacje potrzebowały lepszych narzędzi do okiełznania wątków; w bibliotece standardowej Javiy brakowało konstrukcji niezbędnych do modelowania pewnych wzorców programowania współbieżnego, a sam kod był zwykle mało czytelny i bardzo podatny na błędy.

Java 21 - jak wypróbować wersję early_access

Chcę wypróbować Javę 21! To proste! Możesz bardzo łatwo wypróbować nowości w javie 21, o których pisałam w poprzednim wpisie. Nie musisz nic instalować. Wystarczy: ściągnąć i rozpakować archiwum; wskazać na niego w zmiennej JAVA_HOME; dodać podkatalog /bin do swojej zmiennej PATH. Małymi kroczkami Oto jak to zrobić po kolei (w systemie Ubuntu Linux): Otwórz https://jdk.java.net/21/ Znajdziesz tu listę paczek do ściągnięcia: archiwum z jdk oraz plik z checksumą (sha256)

Co nowego w Javie 21?

Java 21 To jest prawdziwa bomba! Java 21 to już zupełnie inny język. Zmiany, które pojawią się w wydaniu planowanym na wrzesień 2023, można z grubsza podzielić na dwie kategorie: Zmiany w języku i bibliotekach Oto najważniejsze i - moim zdaniem - najciekawsze zmiany, jakie czekają nas w Javie 21. Nie są one rewolucyjne, ale sprawiają, że pisanie kodu - oraz, co jest nawet dużo ważniejsze, jego czytanie - stanie się dużo łatwiejsze.

Kobiety w IT

Notka: Wpis miał się pojawić w dniu 8 marca, ale tego dnia przyszło moje nowe biurko, którego instalacja zabrała trochę czasu. Oto trochę spóźniony wpis - z grafiką wygenerowaną przez [model AI] (https://deepai.org/) - i, jak zwykle, pisany trochę na kolanie… Kobieta. 👩 Na sam dźwięk tego słowa uruchamia się w Twojej głowie szereg skojarzeń 🧠. Tych narzuconych Ci w toku Twojego wychowania, tych wessanych nieświadomie z kultury, w której żyjesz, a także tych, które wynikają z Twojej własnej historii życia 🐉 .

Drugie urodziny bloga

Dziś spisuję swoje przemyślenia dotyczące prowadzenia bloga. Z góry zastrzegam, że nie napiszę tu nic odkrywczego ani wartego Waszego czasu, więc ci z Was, którzy śledzą artukuły techniczne, będą musieli na kolejny techniczny wpis jeszcze trochę poczekać.