Java · Backend · Narzędzia

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.

Start tutaj

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.

01

Java od podstaw

Składnia, klasy, obiekty, kolekcje, wyjątki, Stream API i najważniejsze mechanizmy języka Java.

Przejdź do Javy →

02

Backend i Spring

REST API, Spring Boot, konfiguracja aplikacji, dobre praktyki i przykłady z pracy backend developera.

Zobacz backend →

03

Narzędzia developera

Maven, Git, Linux, Redis, SQL i narzędzia, które realnie przydają się w codziennym programowaniu.

Poznaj narzędzia →

Najnowsze wpisy

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”…

    Czytaj dalej

  • 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łą…

    Czytaj dalej

  • 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…

    Czytaj dalej

  • 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…

    Czytaj dalej

Archiwum

Wszystkie wpisy

Przeglądaj artykuły o Javie, backendzie, SQL, Linuksie, Redisie, Mavenie i narzędziach programisty.

  • SQL #1: schemat bazy danych

    Historia Koncepcja baz danych jest prawie tak stara jak cała informatyka. Ogólna idea baz danych polega na posiadaniu wyspecjalizowanego programu (silnika bazodanowego), który mógłby wyszukiwać dane przede wszystkim po ich zawartości a nie po…

    Czytaj dalej

  • Java #59: struktury danych bezpieczne wątkowo

    Na koniec cyku wpisów związanych z wielowątkowością, warto przyjrzeć się, jakie struktury danych bezpieczne wątkowo oferuje programistom Java. Okazuje się, że wiele problemów zostało już dawno przez kogoś rozwiązane (co jest dość częste w…

    Czytaj dalej

  • Java #58: volatile – widoczność zmiennych

    Jednym z wielu problemów obok synchronizacji, jest widoczność zmiennych klasowych dla poszczególnych wątków. Nie jest to problem oczywisty, dlatego rozważę wpierw poniższy kod. Na konsoli powinno wyświetlić się: Wynik nie jest poprawny, zmiana flagi…

    Czytaj dalej

  • Java #57: egzekutory – pule wątków

    Egzekutory W poprzednich lekcjach wątki były odpalane za pomocą odpalania za każdym razem osobnej instancji. Nie jest to jednak bardzo wygodny sposób. Wyobraź sobie, że musisz ten sam wątek odpalić tysiąc razy! Wymagałoby to…

    Czytaj dalej

  • Podstawy programowania – słowniczek

    Zapraszam Cię do mojego mini słowniczka z pojęć informatycznych. Jeśli interesują Cię podstawy programowania, to z pewnością znajdziesz tu dużo interesującej wiedzy! Pamięć – układ zer i jedynek. Każde miejsce zapisać można wartością 0…

    Czytaj dalej

  • Java #56: obiekty niezmienne (immutable)

    Obiekty niezmienne Przetwarzanie wielowątkowe niesie ze sobą jeden podstawowy problem. Praca wielu wątków na jednej klasie przechowującej stan (np. zwykła klasa typu POJO), wymaga odpowiedniej synchronizacji. Innym sposobem jest wymuszenie na klasie, która ma…

    Czytaj dalej

  • Java #55: zmienne atomowe i zamki

    Poza możliwością synchronizacji wątków, używając słowa sychronized, Java udostępnia wiele dedykowanych rozwiązań związanych z pracą w środowisku wielowątkowym. Większość z nich znajdziesz w pakiecie java.util.concurrent. W tym wpisie omówię dwa z nich: zmienne atomowe…

    Czytaj dalej

  • Java #54: synchronizacja wątków (synchronized)

    Praca w wielowątkowym środowisku stwarza wiele możliwości, ale też problemów. Jednym z nim jest synchronizacja wątków pracujących na tych samych zasobach. Częstym problemem, pojawiającym się w programowaniu współbieżnym, jest tzw. wyścig (ang. race condition).…

    Czytaj dalej

  • Java #53: wątki – przetwarzanie wielowątkowe

    Wątki w Javie Jednym z powodów, dla którego język Java stał tak popularny w latach 90-tych była prostota z jaką programista mógł zaprojektować środowisko wielowątkowe. W tamtym okresie nie było zbyt wiele technologii, które…

    Czytaj dalej

  • Baldur’s Gate 1: Enhanced Edition (rozszerzona edycja)

    Marzeniem każdego mężczyzny w dzieciństwie jest zostać żołnierzem, strażakiem lub piłkarzem. Co z tego wyszło później pokazuje życie, ale zawsze pozostaje nam pewna alternatywa w postaci gier komputerowych. Gry RPG (Role Playing Game) dają…

    Czytaj dalej