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 8 #5: zastosowanie Stream API w przetwarzaniu danych
Ukoronowaniem wszystkich poprzednich lekcji odnośnie Javy 8, jest właśnie biblioteka Stream API. To ona wymusiła na programistach poważne zmiany w samej semantyce języka Java, takich jak choćby lambdy, a co za nimi idzie interfejsy…
Java 8 #4: Optional – pozbądź się null pointerów
Czym jest Optional? Jednym z najczęstszych zarzutów do języka Javy jest to, że nie jest to język, które w łatwy sposób radzi sobie z brakiem przypisanej referencji do obiektu (czyli po prostu z null…
Java 8 #3: interfejsy funkcyjne – przegląd
Różne interfejsy funkcyjne W poprzednim wpisie postarałem się wytłumaczyć, że wyrażenie lambda można z łatwością przekształcić na znaną już Ci klasę anonimową i na odwrót. Nie znaczy to jednak, że obie te struktury są…
Java 8 #2: wyrażenia lambda i interfejs funkcyjny
Wyrażenie lambda Wyrażenia lambda (ang. lambda expression) są próbą zaimplementowania koncepcji związanych z programowaniem funkcyjnych* w pełni obiektowym języku jakim jest Java. Koncept ten jest bardzo stary, o czym możesz się przekonać czytając chociażby…
Java 8 #1: metody domyślne i statyczne w interfejsach
Interfejsy w JDK 7 Zanim zacznę opisywać zmiany jakie zaszły w interfejsach w Javie w wersji ósmej, takie jak np. metody domyślne czy metody statyczne, spójrz na moje małe podsumowanie, jak działały one w…
SQL #4: Transakcje, ACID i poziomy izolacji
Transakcja Jest to zbiór operacji na bazie danych, które stanowią pewną całość. Powinny zostać wykonane wszystkie albo żadna z nich. Nie ma mowy o częściowym wykonaniu. Warunki jakie powinny spełniać transakcje są dokładniej opisane…
SQL #3: Group by, having, funkcje agregujące oraz join
GROUP BY i HAVING Aby zrozumieć do czego służą funkcje agregujące, wpierw musisz pojąć założenia grupowania w języku SQL. GROUP BY i HAVING służą do grupowanie danych a potem ustawienie warunku na jego wyniku.…
SQL #2: tworzenie schematu, zapytań i edycja danych
Język SQL (ang. Structured Query Language) jest rodzajem deklaratywnego języka, który powstał w latach 70-siątych, do obsługi danych w bazach. Język ten w swojej istocie miał być intuicyjny i prosty, tak aby maksymalnie ułatwić…
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…
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…