Praktyczne programowanie w Javie
Blog o Javie, backendzie i narzędziach programisty. Znajdziesz tu praktyczne
przykłady, konfiguracje, notatki z codziennej pracy i konkretne rozwiązania problemów.
Wybierz swoją ścieżkę
Jeśli jesteś pierwszy raz na blogu, zacznij od jednego z głównych obszarów.
Każda ścieżka prowadzi do praktycznych wpisów, przykładów i notatek z codziennej pracy programisty.
Java od podstaw
Składnia, klasy, obiekty, kolekcje, wyjątki, Stream API i najważniejsze mechanizmy języka Java.
Backend i Spring
REST API, Spring Boot, konfiguracja aplikacji, dobre praktyki i przykłady z pracy backend developera.
Narzędzia developera
Maven, Git, Linux, Redis, SQL i narzędzia, które realnie przydają się w codziennym programowaniu.
Najnowsze artykuły z bloga
Świeże wpisy o Javie, backendzie, narzędziach programisty, Linuksie, SQL i praktycznych problemach z codziennej pracy.
Java 12: drobne zmiany
Nie zauważysz wiele istotnych zmian Java 12. Co prawda w kolejnym JDK zaprezentowano 'demo’ kilku ciekawych „featurów”, które wejdą następnych wersjach (np. zmiany w switch), jednak sama „dwunastka”…
Narzędzia programisty #4: Redis cache
Stosowanie tzw. cache’a jest jednym z najprostszych sposobów do osiągnięcia lepszej wydajności programu komputerowego. Redis jest jedną z wielu technologii tego typu. W poniższej notce pokażę Ci małą…
Popularne frameworki #1: Lombok
Język Java często jest krytykowany za konieczność pisania kodu, który mógłby być automatycznie wygenerowany przez JDK. Ciągłe pisanie getterów i setterów do każdej klasy POJO, tworzenie toStringów, czy…
Narzędzia programisty #3: Maven postawy
Jedną z ważniejszych zasad w programowaniu jest korzystanie z fragmentów kodu opracowanych już przez kogoś innego. Niektórzy nazywają tą regułę 'nie wymyślaniem koła od nowa’. Chodź z pozoru…
Wszystkie wpisy
Przeglądaj artykuły o Javie, backendzie, SQL, Linuksie, Redisie, Mavenie i narzędziach programisty.
Java #29: tablice wielowymiarowe
Zanim przejdę do długo wyczekiwanych kolekcji*, należałoby rozszerzyć odrobinę Twoją wiedzę o tablicach. Znasz już ich podstawy. Wiesz, że można trzymać w nich zarówno typy proste (int, float, itp.) jak i referencyjne (np. obiekty…
Java #28: instanceof operator
Słowo kluczowe instanceof Ta lekcja jest kontynuacją poprzedniej lekcji o interfejsach. Wkrótce zobaczysz, że interfejsy są używane bardzo często w języku Java. Najważniejsze jest zrozumienie, że interfejs to taka foremka, którą później trzeba wypełnić,…
Java #27: implementacja interfejsu
Implementacja interfejsu w programowaniu Pewnie już znasz pojęcie interfejs, które często występuje jako interfejs graficzny. Wtedy można go rozumieć, jako sposób w jakim użytkownik komunikuje się z komputerem (z reguły są to różnego rodzaju…
Java #26: klasa Object
Klasa Object – matka wszystkich klas Wróć do znanej z poprzednich lekcji klasy Cat (może to być też jakakolwiek inna zaimplementowana przez Ciebie klasa) i spróbuj wywołać ją w metodzie main, tak jak na obrazku:…
Java #25: varargs – zmienna liczba argumentów
Korzystanie z varargs Jesteś już wstanie bez problemu przeładowywać metody i konstruktory w klasie. Z reguły taka operacja opiera się na dodaniu dodatkowych parametrów do sygnatury metody lub konstruktora. Czasami jednak nie wiadomo jak…
Java #24: blok statyczny i toString
Blok statyczny Dziś dokończenie lekcji odnośnie słowa kluczowego static. Poza polami i metodami Java umożliwia też tworzenie bloków statycznych*. Ogólnie, jeśli zobaczysz gdzieś słowo static to powinno dla Ciebie być znakiem, że nie mamy tu do czynienia z…
Java#23: pola statyczne i stałe
Pola statyczne i metody Pamiętasz pewnie z kursu dotyczącego podstaw programowania, że alternatywą dla programowania obiektowego jest programowanie strukturalne (oparte na metodach statycznych). Każda metoda statyczna (czyli klasowa) musi zawierać wszystkie wewnętrzne komponenty (użyte…
Java #22: słowo kluczowe final
Wiesz już czym jest dziedziczenie oraz polimorfizm. Znasz także klasę abstrakcyjną, która musi rozszerzać inną, aby zostać użyta. Czasami jednak będziesz chcieć uniknąć rozszerzania jednej klasy przez drugą. Powodów może być wiele, a jednym…
Java #21: przeciążanie metod
W poprzedniej lekcji pisałem o tym jak przesłaniać metody za pomocą dziedziczenia i adnotacji @Override. Teraz dowiesz się, jaka jest różnica między przesłanianiem (ang. override) a przeciążaniem (ang. overload) metody. Nie jest to wbrew pozorom to…
Java #20: adnotacja override, przesłanianie metod
Czym są adnotacje? W dzisiejszej lekcji poznasz swoją pierwszą adnotację, którą to będzie adnotacja override. Adnotacje tak jak obiekty są typami referencyjnymi. Nie będę wnikał w jaki sposób się je tworzy, bo jest to wiedza…