Adresaci szkolenia

Szkolenie adresowane jest do programistów, pragnących poznać język Java.

Cel szkolenia

Celem szkolenia jest nabycie umiejętności programowania w języku Java (w tym także w najnowszej jego wersji) oraz zapoznanie się z platformą Java w zakresie umożliwiającym swobodne poruszanie się po specyfikacjach stowarzyszonych z JSE. Program szkolenia ułożony jest tak, by pokrywał większość zagadnień objętych certyfikatem OCPJP, a zarazem dostarczał wiedzy niezbędnej do późniejszego zrozumienia platformy Java Enterprise Edition. Warsztaty prowadzone są z użyciem narzędzi stosowanych przy prawdziwych projektach (IDE, kontrola wersji, testowanie, notacja UML) tak, aby walory praktyczne szkolenia były jak największe.

W ramach szkolenia, oprócz podstaw języka, uczestnicy poznają między innymi: programowanie aplikacji desktop przy użyciu biblioteki JavaFX, programowanie sieci TCP/IP i aplikacji wielowątkowych. Szkolenie obejmuje również podstawy Java Reflection API, JDBC oraz wprowadzenie do Java Enterprise Edition. Podczas warsztatów wykorzystywane są narzędzia: Eclipse, IntelliJ IDEA, Maven, Git, jUnit. Wymienione narzędzia mogą być zastąpione innymi, stosowanymi w Państwa firmie.

Mocne strony szkolenia

Program pokrywa zagadnienia objęte certyfikatem OCPJP, a zarazem dostarcza podstaw niezbędnych do zrozumienia platformy Java Enterprise Edition (JEE).

Kurs kładzie nacisk na zagadnienia i umiejętności potrzebne w realnych projektach takie jak aspekty projektowania, testowania czy narzędzi.

Szkolenie jest ciągle uaktualniane do pojawiających się najnowszych wersji języka, przy zachowaniu informacji niezbędnych do utrzymywania programów tworzonych we wcześniejszych wersjach.

Wymagania

Szkolenie jest intensywne i skoncentrowane na dostarczenie maksimum przydatnej wiedzy dotyczących języka i zagadnień okołoprojekowych, dlatego od uczestników wymagana jest umiejętność programowania w dowolnym języku.

Parametry szkolenia

5*8 godzin (5*7 godzin netto) wykładów i warsztatów (z wyraźną przewagą warsztatów). W trakcie warsztatów, oprócz prostych ćwiczeń, projektowana i implementowana jest prosta aplikacja, obejmująca kluczowe zagadnienia poruszane na szkoleniu.

Program szkolenia

  1. Wprowadzenia do platformy java
    1. Podstawowe informacje o języku
    2. Rodzaje instalacji
    3. Narzędzia dostępne w instalacji JSE (kompilator, debuger, interpreter, generator dokumentacji i inne)
    4. Dokumentacja
    5. Sposoby dostarczania aplikacji Java SE (aplikacja klasyczna, java web start, plugin)
    6. Zasoby internetowe
    7. Kompilacja i uruchomienie pierwszego programu
    8. Konwencje obowiązujące w języku Java
  2. Narzędzia
    1. Eclipse, lub inne narzędzie wybrane przez zamawiającego
    2. Narzędzia wspomagające proces budowania (Maven)
    3. Narzędzia kontroli wersji (Git)
  3. Podstawy języka
    1. Typy danych
    2. Deklaracja klas i interfejsów
    3. Deklaracja zmiennych typów prostych, tablicowych, wyliczeniowych i obiektowych
    4. Zakres widoczności - podstawy
    5. Klasy opakowujące
    6. Inicjalizacja zmiennych
    7. Metoda main i przekazywanie argumentów wywołania programu
    8. Przekazywanie argumentów do metod
  4. Instrukcje sterujące wykonaniem programu
    1. Instrukcje warunkowe: if, else switch
    2. Pętle for, for-each, while, do-while
    3. Instrukcje break, continue, wykorzystanie etykiet
  5. Operatory, przypisania, konwersja i rzutowanie
  6. Programowanie obiektowe
    1. Deklaracja klas
    2. Tworzenie konstruktorów i inicjalizacja obiektów
    3. Składowe statyczne, import statyczny
    4. Encapsulation, Coupling, Cohesion
    5. Dziedziczenie
    6. Dziedziczenie a zakres widoczności
    7. Dziedziczenie a przypisania, operator instanceof
    8. Używanie konstruktorów i metod nadklasy
    9. Overload a override
    10. Klasy abstrakcyjne, interfejsy, metody domyślne w interfejsach
    11. Klasa Object
    12. Typy wyliczeniowe
  7. Wprowadzenie do projektowania
    1. Podstawy UML
    2. Rozważania projektowe: agregacja, kompozycja, asocjacja, generalizacja
    3. Podstawowe wzorce projektowe (Singleton, DAO, Fabryka, IoC)
    4. Podstawy Domain-Driven Design
  8. Obsługa wyjątków i asercje
    1. Koncepcja sytuacji wyjątkowych w Java
    2. Typy sytuacji wyjątkowych (klasy Exception, RuntimeException, Error)
    3. Obsługa wyjątków (klauzule try, catch, multi-catch, finally)
    4. Klauzula try-with-resources, automatyczne zamykanie zasobów
    5. Deklaracja metod zgłaszających wyjątki oraz zgłaszanie wyjątków (throws, throws)
    6. Wyjątki a dziedziczenie
    7. Przegląd wybranych wyjątków
    8. Projektowanie własnych typów wyjątków
    9. Asercje
  9. Klasa Math, Operacje na napisach i formatowanie
    1. Metody Klasy Math
    2. Klasa String, StringBuffer, StringBuilder
    3. Operacje na napisach
    4. Atomizacja napisów i podstawy wyrażeń regularnych (metoda split, klasa StringTokenizer, Scanner, Pattern)
    5. Formatowanie napisów, dat i liczb (klasa Formatter)
    6. Nowe API do czasu
    7. Formatowanie z uwzględnieniem ustawień regionalnych
  10. Kolekcje i klasy Generyczne
    1. Rodzaje kolekcji w Java
    2. Kolekcje uporządkowane, nieuporządkowane, posortowane, nieposortowane
    3. Metoda equals i hashCode
    4. Interfejsy Collection, Set, Map, List
    5. Przegląd dostępnych kolekcji
    6. Kolekcje synchronizowane
    7. Iteracja po kolekcjach
    8. Interfejsy Comparable i Comparator
    9. Metody użytkowe z klasy Collections
    10. Interfejs Clonable
    11. Kolekcje Generyczne
    12. Zasady tworzenia klas Generycznych
  11. Obsługa Wejścia/Wyjścia
    1. Koncepcja strumieni w Java
    2. Rodzaje strumieni
    3. Strumienie Binarne (InputStream, OuputStream i pochodne)
    4. Strumienie Znakowe (Reader, Writer i pochodne)
    5. Zagadnienia kodowania w strumieniach znakowych
    6. Łączenie strumieni
    7. Strumienie skojarzone z plikami oraz interakcja z systemem plików klasy( File, RandomAccessFile, FileOutputStream,FileInputStream)
    8. File I/O z NIO.2
    9. Interfejs Serializable
    10. Serializacja obiektów do strumieni (ObjectOutputStream,ObjectInputStream)
    11. Modyfikacja domyślnej serializacji
    12. Standardowe wejście/wyjście
    13. Przykłady strumieni specjalizowanych
    14. Atomizacja strumieni (StreamTokenizer)
  12. Podstawy JDBC
    1. O JDBC
    2. Rejestracja sterownika
    3. Wykonywanie zapytań
    4. Transakcje
    5. Projektowanie warstwy dostępu do danych
  13. Zarządzanie zasobami JVM
    1. Struktura pamięci
    2. Metoda finalize i Garbage Collector
    3. Monitorowanie zasobów wirtualnej maszyny
  14. Programowanie aplikacji wielowątkowych
    1. Pojęcie Wątku
    2. Konstrukcja wątków w Javie (Runnable i Thread)
    3. Cykl życia wątku
    4. Scheduler (zasada działania i priorytety)
    5. Metody yield, join, sleep
    6. Grupy wątków
    7. Zagadnienia synchronizacji (wait,notify,notifyAll, zakleszczenie, zagłodzenie)
    8. Klasy pakietu java.util.concurrent
    9. Wykonawcy i pule
    10. Fork/Join
  15. Programowanie sieci TCP/IP
    1. Podstawy protokołów IP / TCP / UDP
    2. Programowanie z użyciem UDP (DatagramSocket, Datagram Packet)
    3. Programowanie z użyciem TCP (Socket, ServerSocket)
    4. Rodzaje i Obsługa wyjątków
    5. Zagadnienia przesyłania obiektów
    6. Zagadnienia współbieżnej obsługi wielu połączeń
  16. Elementy programowania funkcyjnego i metaprogramowania
    1. Klasy wewnętrzne, statyczne, anonimowe
    2. Lambda-wyrażenia i referencje do metod
    3. Strumieniowe API dla kolekcji
    4. Adnotacje i podstawy refleksji
  17. Programowanie interfejsów graficznych (JavaFX)
    1. Idea programowania komponentowo-zdarzeniowego
    2. Pojęcie komponentu i kontenera
    3. Przegląd komponentów i kontenerów
    4. Zarządcy rozkładu
    5. Rodzaje zdarzeń i ich obsługa (Events, Listeners, Adapters)
    6. Zagadnienia współbieżności w kontekście UI
    7. Java2D, Java Web Start
  18. Internacjonalizacja i lokalizacja aplikacji
  19. Podstawy automatycznego testowania aplikacji
    1. Koncepcje TDD i BDD
    2. Rodzaje testów
    3. Biblioteki jUnit i testNG
    4. Testowanie z użyciem obiektów Mock
  20. Przegląd zaawansowanych zagadnień platformy Java
    1. Podstawy przetwarzania XML w Java
    2. Classloader
    3. Management & Logging
    4. RMI
    5. JNI
  21. Wprowadzenie do Java Enterprise Edition

Pytania?

* Wymagane.


Konsultant on-line
Skorzystaj z usług naszego konsultanta on-line.
Naciśnij przycisk ‘Skorzystaj’ aby przejść do okienka czatu
Kontakt
ul. Nowogrodzka 62c
02-002 Warszawa
Telefon +48 22 2035600
Fax +48 22 2035601
Email