Szkolenie Java - Programowanie

Opis

Język Java ma już od wielu lat ugruntowaną pozycję w świecie projektów komercyjnych. Pozwala tworzyć różnego typu aplikacji, począwszy do klasycznych desktopowych, a kończąc na systemach serwerowych, opartych o architekturę rozproszoną. Niniejsze szkolenie jest gruntownym wprowadzeniem do tego języka programowanie, uwzględniającym elementy z wersji 8 oraz 9 (na życzenie mogą być przedstawione wybrane elementy Java 10 i 11), które jest przeznaczone dla programistów innych języków i administratorów, którzy w swojej pracy piszą skrypty do automatyzacji pracy. Uczestnicy po szkoleniu są gotowi do komercyjnego tworzenia kodu z użyciem języka Java z naciskiem na dobre praktyki projektowe (takie jak czysty kod, elementy refaktoryzacji, kluczowe zagadnienia związane z architekturą systemów).

Podstawowy program

Moduł 1.

Wprowadzenie do języka Java

Moduł 2.

Obiektowość

Moduł 3.

Kolekcje obiektów

Moduł 4.

Zaawansowane elementy języka

Moduł 5.

Mechanizm obsługi wyjątków

Moduł 6.

Operacja wejścia/wyjścia

Moduł 7.

Trwałe przechowywanie danych

Moduł 8.

Interfejs użytkownika

Moduł 9.

Obsługa wielowątkowości

Moduł 10.

Przydatne biblioteki

Szczegółowy program

Moduł 1.

Wprowadzenie do języka Java

  • Wprowadzenie do platformy Java: platforma Java, maszyna wirtualna, kompilator, dokumentacja Javadoc
  • Wprowadzenie do środowiska programistycznego: Eclipse/IntelliJ
  • Składnia języka Java: typy danych, budowa klasy – pola, metody, instrukcje sterujące, zmienne obiektowe, operatory, tablice, zasady tworzenia identyfikatorów
  • Java i UML – krótkie wprowadzenie do UML, odzwierciedlenie klas Java na diagramie klas UML
Moduł 2.

Obiektowość

  • Pakiety i zakres dostępu
  • Pojęcia klasy i obiektu
  • Analogia obiektowości do rzeczywistości
  • Dziedziczenie
  • Kompozycja
  • Polimorfizm
  • Enkapsulacja danych – poziomy dostępu i elementy architektoniczne
  • Klasy abstrakcyjne
  • Interfejsy
  • Metody z domyślną implementacją
Moduł 3.

Kolekcje obiektów

  • Tablice obiektów
  • Listy, zbiory, mapy, kolejki – kluczowe interfejsy, implementacje oraz przykłady użycia
  • Iterowanie po kolekcjach z użyciem iteratorów oraz pętli foreach
Moduł 4.

Zaawansowane elementy języka

  • Klasa Object i metody o specjalnym znaczeniu: equals, hashCode, clone, toString
  • Opakowania typów prostych („wrappers”), automatyczne zapakowanie i rozpakowanie, rzutowanie, hierarchia klas reprezentujących liczby (Number)
  • Operacje na napisach, klasa String, klasy StringBuilder i StringBuffer
  • Podstawy obsługi daty i czasu, pakiet java.time
  • Adnotacje – ich tworzenie i używanie
  • Strumienie w przeszukiwaniu kolekcji
  • Metody generyczne
  • Interfejsy i klasy generyczne
  • Konsekwencje generyczności
  • Najczęstsze zastosowania typów generycznych
  • Wyrażenia lambda
  • Pojęcie interfejsu funkcyjnego
  • Strumienie, funkcje, predykaty, generatory, kolektory
  • Odniesienia do metod i konstruktorów
Moduł 5.

Mechanizm obsługi wyjątków

  • Wyjątki sprawdzalne
  • Wyjątki niesprawdzalne
  • Przechwytywanie i obsługa wyjątków
  • Posługiwanie się własnymi wyjątkami
Moduł 6.

Operacja wejścia/wyjścia

  • Strumienie wejściowe i wyjściowe
  • Reader/Writer
  • Reprezentowanie zasoby poprzez klasę File
  • Praca z plikami tekstowymi i binarnymi
  • Praca z konsolą, klasa Scanner
  • Serializacja obiektów
Moduł 7.

Trwałe przechowywanie danych

  • Współpraca z relacyjnymi bazami danych - wprowadzenie do JDBC, uzyskanie połączenia, klasy typu Connection, Statement, PreparedStatement, ResultSet, wzorzec Repository
Moduł 8.

Interfejs użytkownika

  • Tekstowy interfejs użytkownika – strumienie standardowego wejścia i standardowego wyjścia
  • Aplikacja otwarta na szybką zmianę interfejsu użytkownika – sposób wykorzystania architektury trójwarstwowej i wzorca MVC do tworzenia skalowalnych i łatwych w utrzymaniu klas interfejsu użytkownika na przykładzie SpringMVC
Moduł 9.

Obsługa wielowątkowości

  • Obsługa wątków w języku Java
  • Synchronizowanie dostępu do zasobów
  • Klasy biblioteczne wspomagające obsługę wielowątkowości
  • Elementy programowania reaktywnego: CompletableFuture
Moduł 10.

Przydatne biblioteki

  • Przegląd kluczowych bibliotek dostępnych w świecie Java: Guava, Apache Commons, Lombok

Parametry szkolenia

Czas trwania
5 x 8h
Forma zajęć
Ćwiczenia - 60%, wykład - 40%
Kod
JAVA
Wielkość grupy
do 10 osób

1) Dlaczego Java?

Język Java powstał ponad 20 lat temu. Na początku jego flagową cechą była możliwość tworzenia apletów. Dzisiaj o apletach już nikt nie pamięta, a Java cały czas cieszy się niezwykle dużą popularnością. A to wszystko za sprawą wszechstronności zastosowania tego języka m. in. w aplikacjach webowych, kodzie po stronie serwera, do tworzenia aplikacji dla Androida, a w ostatnich latach do efektywnego tworzenie Microservices. Szkolenie Java to kumulacja wielu lat doświadczeń związanych z użytkowaniem tego języka i platformy.

Mimo że istnieje wiele innych języków takich jak konkurencyjny C#, Python, Kotlin, Scala, to Java udowodniła, że język cały czas się broni w komercyjnych aplikacjach i bezustannie się rozwija np. poprzez wprowadzenie mechanizmów programowania funkcyjnego w ostatnich wersjach platformy. W Javie jest napisanych wiele systemów bankowych, zaawansowanych systemów e-commerce, systemów rozliczeniowych w telekomunikacji. Za sprawą Spring Framework, a w szczególności popularnego frameworku Spring Boot, platforma Java nabrała po raz kolejny wiatru w skrzydła, wyprzedzając konkurencje. Proste mechanizmy ułatwiające tworzenie usług typu REST, komunikację opartą o messaging, tworzenie infrastruktury dla Microservices, to mocne punkty tego rozwiązania.

Jeśli zatem chcesz solidnie poznać język Java, aby w pełni móc wykorzystywać jego możliwości w zaawansowanych rozwiązaniach, skorzystaj ze szkolenia Java już dziś.

2) Jakie umiejętności warto posiąść poznając język Java?

Język Java to w pierwszej kolejności język obiektowy. Dlatego w trakcie naszego szkolenia pomagamy dogłębnie zrozumieć zasady programowania obiektowego i jego przełożenia na język. Dowiesz się jak konstruować klasy, że dziedziczenie często nie jest najlepszym rozwiązaniem, że interfejsy mogą mieć ogromny wpływ na czytelność i odpowiednią izolację kodu. Szkolenie Java to nie tylko konstrukcje składniowe, ale nauka bazowych zasad typu SOLID czy spójność (ang. cohesion) i stopień zależności (ang. coupling). Od pewnego czasu Java również posiada elementy składniowe związane z programowaniem funkcyjnym i ich sprawne wykorzystanie pozwoli Ci znacząco uprościć przetwarzanie danych w kolekcjach oraz definitywnie pozbyć się kłopotliwej instrukcji null z kodu. Dowiesz się jak sprawnie i z głową korzystać z wyjątków, strumieni, narzędzi do współpracy z bazą danych, jak tworzyć interfejsy użytkownika i aplikacje wielowątkowe. Tak skonstruowane szkolenie Java sprawi, że będziesz czuł się pewnie implementując rozwiązania w rzeczywistych projektach.

Jak zamówić

« lista szkoleń