
Istotne. Będziemy wspominać o tym na początku każdego z warsztatów, żeby ułatwić Ci zrozumienie materiałów. Ten warsztat został nagrany w Java 17. Testy w tym warsztacie również odnoszą się do Java 17. Ma to o tyle znaczenie, że jeżeli będziesz korzystać z nowszych wersji Java, to teoretycznie mogły tam nastąpić jakieś kosmetyczne zmiany. Dlatego dla spójności, zalecamy korzystanie z JDK 17, żeby Twoje przykłady zachowywały się tak jak na nagraniach, ale nie zabraniamy korzystać z nowszego JDK. Pamiętajmy, że Java z założenia jest kompatybilna wstecznie, chociaż praktyka pokazuje, że twórcy czasem naginają tę zasadę. Do tematu aktualizacji wersji Javy i do mechanizmów wprowadzanych w nowszych wersjach języka wrócimy w dedykowanym warsztacie.
Jeżeli natomiast chodzi o wersje narzędzi, to struktura warsztatu została przygotowana w ten sposób, że bazowe mechanizmy Maven i Gradle (są to narzędzia, o których będziemy rozmawiać) są wyjaśnione na Maven 3 i Gradle 7. Jeżeli w nowszych wersjach tych narzędzi pojawią się funkcjonalności, które są istotne (naszym zdaniem) na tym poziomie nauki, to zakres warsztatu będzie rozszerzany i będziemy do niego dodawać kolejne materiały. Dlatego jeżeli chcesz uniknąć problemów wynikających z różnych wersji narzędzi u Ciebie i u nas, pracuj z wymienionymi wyżej wersjami. Możesz oczywiście pracować z wersjami najnowszymi (do których będziemy przechodzić w pewnym momencie kursu), ale na tym etapie może to spowodować pewne rozbieżności. Z drugiej strony to dobrze, bo jak będziesz mieć jakiś problem, to cały Internet stoi przed Tobą i możesz wtedy szukać rozwiązania takiego problemu.
Zaczynamy od wyjaśnienia czym są narzędzia do budowania projektów i po co się tego używa. Dowiesz się jakiego rodzaju zadania w projekcie takie narzędzia wykonują. W obrębie tego materiału dowiesz się, jakie są podstawowe słowa kluczowe, z którymi spotkasz się przy pracy z Maven albo Gradle (o którym powiemy później). Oczywiście nie są to jedyne możliwe słowa kluczowe - definicje oraz słowa kluczowe dotyczące różnych zagadnień poznajemy stopniowo. Zapraszam do zapoznania się przygotowanymi przez nas zagadnieniami.
Warsztat "Building Tools" koncentruje się na narzędziach do automatyzacji budowania aplikacji Java oraz zarządzania zależnościami. Kurs ten ma na celu nauczenie uczestników, jak efektywnie korzystać z narzędzi takich jak Maven i Gradle, które są kluczowe w nowoczesnym procesie tworzenia oprogramowania. Uczestnicy dowiedzą się, jak automatyzować procesy budowania, zarządzać zależnościami, oraz tworzyć pliki wykonywalne zawierające całą aplikację.
Tematyka Warsztatu:
1. Maven:
Czym jest Maven?
Wprowadzenie do narzędzia Maven, jego rola i zastosowania w procesie budowania aplikacji.
POM (Project Object Model):
Struktura i znaczenie pliku POM.xml, który jest sercem projektu Maven.
Dependencies:
Zarządzanie zależnościami w Maven, jak dodawać i aktualizować biblioteki zewnętrzne.
Repositories:
Rejestry Maven, skąd pobierać zależności i jak konfigurować własne repozytoria.
Plugins:
Używanie wtyczek Maven do rozszerzania funkcjonalności procesu budowania.
Fat Jar:
Tworzenie samowystarczalnych plików JAR, które zawierają wszystkie zależności aplikacji.
Test 1 i Zadania:
Sprawdziany wiedzy i praktyczne zadania pozwalające na utrwalenie zdobytych umiejętności.
2. Gradle:
Czym jest Gradle?
Wprowadzenie do narzędzia Gradle, jego cechy i zalety w porównaniu do innych narzędzi budujących.
Konfiguracja projektu Java w Gradle, Gradle Wrapper:
Tworzenie i konfigurowanie projektu Java w Gradle oraz użycie Gradle Wrapper do zapewnienia spójności wersji.
Dependencies:
Zarządzanie zależnościami w Gradle, jak definiować i kontrolować zewnętrzne biblioteki.
Gradle czy Maven? Maven czy Gradle?
Porównanie Gradle i Maven, analiza zalet i wad obu narzędzi, aby pomóc w wyborze odpowiedniego narzędzia dla danego projektu.
Test 2 i Zadania:
Sprawdziany wiedzy i praktyczne zadania pozwalające na zastosowanie zdobytej wiedzy w rzeczywistych projektach.
Ten warsztat został nagrany w Java 17. Testy w tym warsztacie również odnoszą się do Java 17. Ma to o tyle znaczenie, że jeżeli będziesz korzystać z nowszych wersji Java, to teoretycznie mogły tam nastąpić jakieś kosmetyczne zmiany. Dlatego dla spójności, zalecamy korzystanie z JDK 17, żeby Twoje przykłady zachowywały się tak jak na nagraniach, ale nie zabraniamy korzystać z nowszego JDK.
Jeżeli natomiast chodzi o wersje narzędzi, to struktura warsztatu została przygotowana w ten sposób, że bazowe mechanizmy Maven i Gradle (są to narzędzia, o których będziemy rozmawiać) są wyjaśnione na Maven 3 i Gradle 7. Jeżeli w nowszych wersjach tych narzędzi pojawią się funkcjonalności, które są istotne (naszym zdaniem) na tym poziomie nauki, to zakres warsztatu będzie rozszerzany i będziemy do niego dodawać kolejne materiały. Dlatego jeżeli chcesz uniknąć problemów wynikających z różnych wersji narzędzi u Ciebie i u nas, pracuj z wymienionymi wyżej wersjami. Możesz oczywiście pracować z wersjami najnowszymi (do których będziemy przechodzić w pewnym momencie kursu), ale na tym etapie może to spowodować pewne rozbieżności. Z drugiej strony to dobrze, bo jak będziesz mieć jakiś problem, to cały Internet stoi przed Tobą i możesz wtedy szukać rozwiązania takiego problemu.
Warsztat ten jest piątym warsztatem w ramach ścieżki Zajavka. Oczywiście możesz go realizować niezależnie od innych moich materiałów.
Kurs ten jest idealny dla programistów, którzy chcą nauczyć się, jak efektywnie korzystać z narzędzi Maven i Gradle, aby zautomatyzować procesy budowania aplikacji Java oraz zarządzania zależnościami.