Warsztat Java #1 - Java generics i kolekcje
What you'll learn
- Uczestnicy zdobędą głęboką wiedzę na temat typów generycznych, dowiedzą się, jak je definiować i używać w różnych kontekstach, h jak klasy, interfejsy i metody
- Kursanci poznają różne typy kolekcji dostępne w Javie, takie jak Listy, Sety, Mapy i Kolejki. Nauczą się, jak wybierać odpowiednią kolekcję do konkretnych zadań
- Uczestnicy nauczą się, jak implementować interfejsy Comparable i Comparator, aby umożliwić sortowanie obiektów w kolekcjach.
- Kursanci dowiedzą się, jak obsługiwać wartości null w kolekcjach oraz jakie są praktyki w zarządzaniu tymi przypadkami. Poznają techniki unikania błędów.
- Uczestnicy poznają podstawy analizy algorytmów z wykorzystaniem notacji Big O. Nauczą się oceniać wydajność operacji na kolekcjach oraz optymalizować kod
Requirements
- Uczestnik powinien mieć podstawową znajomość języka Java, w tym zrozumienie składni, struktur danych oraz podstawowych koncepcji obiektowych, takich jak klasy, obiekty, dziedziczenie i polimorfizm.
- Uczestnik powinien znać podstawowe typy kolekcji w Javie
Description
Z tego warsztatu dowiemy się, czym są typy generyczne w Javie oraz jak zachowuje się mechanizm określania typu, na jakim chcemy operować w danej klasie. Dowiemy się, jak można stosować typy generyczne na przykładzie różnych rodzajów kolekcji (Listy, Sety, Kolejki i Mapy). Do tego dowiemy się, jak można efektywnie określać, w jaki sposób chcemy posortować elementy w kolekcji.
Generics
Klasy Generyczne
Dowiesz się, jak tworzyć klasy generyczne, które mogą operować na różnych typach danych, zachowując jednocześnie bezpieczeństwo typów.
Interfejsy Generyczne
Nauczysz się, jak definiować interfejsy generyczne, które mogą być implementowane przez różne klasy pracujące z różnymi typami danych.
Metody Generyczne
Zrozumiesz, jak tworzyć metody generyczne, które mogą działać na różnorodnych typach danych bez konieczności ich wcześniejszego określania.
A co by było, gdyby nie było generyków?
Zastanowimy się nad korzyściami wynikającymi z używania generyków i jakie problemy mogłyby się pojawić, gdyby ich nie było.
Unbounded Wildcards
Poznasz użycie dzikich kart bez ograniczeń (unbounded wildcards) i ich zastosowanie.
Upper Bound Wildcard
Dowiesz się, jak ograniczyć typy do podklas za pomocą górnych ograniczeń (upper bound wildcard).
Lower Bound Wildcard
Zrozumiesz, jak stosować dolne ograniczenia (lower bound wildcard) dla generyków.
Dziwne Przykłady
Analiza nietypowych przypadków użycia generyków, które pomogą lepiej zrozumieć ich mechanizmy.
Comparing
Wstęp
Wprowadzenie do tematu porównywania elementów w kolekcjach.
Comparator
Nauczysz się, jak implementować interfejs Comparator do porównywania obiektów według określonych kryteriów.
Comparable
Zrozumiesz, jak używać interfejsu Comparable do porównywania obiektów według naturalnego porządku.
Kolekcje
Podsumowanie Podstaw
Krótkie przypomnienie podstawowych informacji o kolekcjach.
Listy
Szczegółowe omówienie list: ArrayList, LinkedList i inne typy list.
Podsumowanie z Bartkiem K.
Podsumowanie tematu list z Bartkiem K.
Sety
Omówienie setów: HashSet, LinkedHashSet, TreeSet.
Mapy
Szczegółowe omówienie map: HashMap, LinkedHashMap, TreeMap.
Kolejki
Omówienie kolejek: ArrayDeque, Stack, PriorityQueue.
Obsługa null w Kolekcjach
Nauczysz się, jak zarządzać wartościami null w różnych typach kolekcji.
Notacja BIG O
Wprowadzenie do notacji Big O, która służy do analizy złożoności czasowej i pamięciowej algorytmów.
Projekt!
Na zakończenie warsztatu uczestnicy zrealizują projekt, w którym wykorzystają zdobyte umiejętności i wiedzę z zakresu generyków oraz kolekcji w Javie.
Warsztat #1 Java generics i kolekcje ze ścieżki Zajavka
Ten warsztat został nagrany w Java 11. Testy w tym warsztacie również odnoszą się do Java 11. 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 11, żeby Twoje przykłady zachowywały się tak jak na nagraniach, ale oczywiście możesz korzystać z nowszego JDK.
Warsztat ten jest doskonałą okazją do pogłębienia wiedzy na temat typów generycznych i kolekcji w Javie. Dzięki praktycznym zadaniom, testom oraz projektowi końcowemu uczestnicy zdobędą cenne doświadczenie, które będzie przydatne w ich dalszej karierze programistycznej.
Warsztat ten jest pierwszym warsztatem w ramach ścieżki Zajavka.
Who this course is for:
- Osoba, która ma podstawową wiedzę na temat języka Java i chce pogłębić swoje umiejętności programistyczne, zwłaszcza w zakresie typów generycznych i kolekcji.
- Student kierunków związanych z informatyką, który szuka dodatkowego wsparcia i praktycznych przykładów, aby lepiej zrozumieć koncepcje omawiane na zajęciach.
- Osoba, która hobbystycznie interesuje się programowaniem i chce rozwinąć swoje umiejętności w języku Java.
- Młodszy programista pracujący już w branży IT, który chce poszerzyć swoje kompetencje i stać się bardziej wartościowym członkiem zespołu.
- Ktoś, kto planuje swoją przyszłość zawodową w programowaniu i chce specjalizować się w Javie.
Instructors
Zajavka to kompletny, profesjonalny i pasjonujący roczny kurs programowania. Zajavkę stworzyliśmy z myślą o tych, którzy pragną rozpocząć swoją intensywną przygodę z programowaniem i w ciągu 12 miesięcy osiągnąć poziom profesjonalnego programisty Javy. Zacznij naukę od bootcampu od podstaw i kontynuuj ją w warsztatach, które krok po kroku, intensywnie i w ciągu kilku miesięcy przygotują Cię do pełnienia roli profesjonalnego programisty Javy.
Jestem programistą Java z ponad 9 letnim doświadczeniem komercyjnym. Zajmuję się głównie technologiami Java i JVM oraz tworzeniem stron aplikacji webowych wykorzystujących technologie Java, Spring, Kafka. Mam również doświadczenie w tworzeniu aplikacji opartych o React. Stawiam przede wszystkim na ciągły rozwój osobisty, zdobywanie nowych umiejętności i podnoszenie jakości swojej pracy. W swojej karierze zawodowej spędziłem dużo czasu ucząc innych, prowadząc szkolenia i nagrywając materiały wideo w celach edukacyjnych.