Comarch IT Akademia

IT Camp – Junior Java Developer

Najbliższe szkolenia

  • Cele

    Kurs ma na celu przygotowanie do roli Młodszego Programisty Java. Podczas kursu uczestnik pozna narzędzia wykorzystywane w codziennej pracy programisty, język Java, oraz podstawy wielu technologii pozwalających na tworzenie profesjonalnych projektów komercyjnych.
  • Metoda prowadzenia

    W ramach kursu do zrealizowania będą wyznaczane przez prowadzących zadania domowe oraz jeden większy projekt (ok 50 roboczo godzin) wykorzystujący umiejętności zdobyte na całym szkoleniu.

    Prace domowe pozwolą na obycie się z kodem, środowiskiem i zdobyciem podstawowego doświadczenia w pisaniu i projektowaniu oprogramowania. Pomogą także w przyswojeniu dobrych praktyk programowania i zrozumieniu problemów wynikających z niestarannie pisanego kodu oraz nieprzemyślanego projektu. Zadania domowe pozwalają na utrwalenie wiedzy zdobytej na zajęciach, lepsze zrozumienie poznanych technologii, rozwijają zdolności algorytmiczne oraz projektowe. Część zadań będzie polegała na samodzielnym zgłębieniu konkretnego tematu i przedyskutowaniu go na zajęciach. Projekt końcowy, to w pełni działająca aplikacja tworzona w metodyce agile. Wymagane jest przygotowanie dokumentacji technicznej aplikacji oraz wykorzystanie jak największej ilości technologii. Projekt musi spełniać trzy główne założenia – gromadzenie danych, przetwarzanie danych oraz możliwość manipulacji danymi. Dzięki takiemu podejściu należy wykazać się umiejętnościami pisania przemyślanego kodu back-end’owego, front-end’owego oraz projektowania i implementowania prostych algorytmów. Skończony projekt jest również dobrym elementem składowym do portfolio przyszłego programisty. Temat projektu można wybrać z puli przygotowanej przez trenerów lub po konsultacji i zaakceptowaniu napisać wymyśloną samodzielnie aplikację. Podczas wykonywania zadań oraz projektu kursanci mogą liczyć na pomoc mentorów i konsultować napotkane problemy.

    Podczas zajęć z Androida i Springa kursanci tworzą aplikacje od podstaw. Poznają specyficzne technologie, zapoznają się z metodami iteracyjnego rozwijania oprogramowania i realizują scenariusze, z którymi zetkną się w pracy na stanowisku programisty. Aplikacje utworzone podczas tych modułów będą stanowić portfolio uczestnika, potwierdzające umiejętność korzystania ze zdobytej wiedzy. Mentoring trenerski przez doświadczoną osobę w programowaniu Java – odkrywanie i rozwijanie potencjału ucznia.
  • Czas trwania

    208 godzin / 26 dni

    Sprawdź finansowanie >

  • Wiedza teoretyczna i praktyczna

    Narzędzia deweloperskie

    ◦         Środowisko programistyczne Intellij

    • instalacja
    • obsługa
    ◦         narzędzia języka Java
    • JDK
    • JRE
    • JVM

    Java podstawy

    ◦         Pierwsza aplikacja

    ◦         struktura aplikacji w Java

    • struktura i znaczenie katalogów
    • pakiety
    • pliki Intellij
    • External Libraries
    • klasa startowa
    ◦         uruchamianie projektu
    • kompilacja
    • walidacja
    • uruchamianie pliku .jar
    ◦         Typy danych w Java
    •  liczbowe
    • zmiennoprzecinkowe
    •  znaki i łańcuchy znaków
    • wartości logiczne
    ◦         zmienne
    • definicja zmiennych
    • przypisywanie, odczytywanie i zmiana wartości
    • inicjalizacja zmiennych
    ◦         operatory wbudowane w język Java

    ◦         instrukcje warunkowe
    •  if
    • switch
    ◦         pętle
    • for
    • foreach
    • while
    • do-while
    • instrukcje break i continue
    ◦         tablice
    • definicja tablic
    • inicjalizacja tablic
    • iteracja po tablicach
    • tablice dwuwymiarowe oraz wielowymiarowe

    Obiektowość w Java

    ◦         klasy i obiekty

    •  zawartość klas
    • konstrukcja obiektów
    • typy wyliczeniowe
    • referencje
    • typy niemutowalne
    • klasy wewnętrzne
    ◦         metody
    • definicja metod
    • funkcje i procedury
    • metody inline
    • przekazywanie parametrów
    • wartości zwracane
    • przesłanianie metod
    • przeciążanie metod
    ◦         enkapsulacja
    • modifikatory dostępu
    • getter’y
    • setter’y
    • ukrywanie metod
    ◦         dziedziczenie

    ◦         polimorfizm

    ◦         abstrakcja w języku Java
    • interfejsy
    • implementacja interfejsów
    • klasy abstrakcyjne
    •  metody abstrakcyjne
    • klasy anonimowe

    ◦         static oraz final

    ◦         konwersja i rzutowanie

    Narzędzia wbudowane w Java

    ◦         kolekcje

    • listy
    • zbiory
    • mapy
    • kolejki
    • operacje na kolekcjach
    • sortowanie kolekcji
    ◦         wyjątki
    • przechwytywanie wyjątków
    • przekazywanie wyjątków
    • tworzenie własnych wyjątków
    • podział wyjątków
    ◦         wielowątkowość
    • thread
    • runnable
    • executor’y wątków
    • pule wątków
    • synchronizacja wątków

    ◦         strumienie wejścia/wyjścia

    ◦         obsługa plików

    ◦         typy generyczne

    ◦         strumienie oraz wyrażenia lambda

    ◦         zarządzanie pamięcią – GC

    ◦         debugowanie aplikacji

    Bazy danych

    ◦         relacyjne bazy danych

    • uruchamianie serwera baz danych
    • zasada działania
    • tworzenie baz danych
    • relacje
    ◦         język SQL
    • wstawianie rekordów do bazy
    • zapytania
    • modyfikacja danych
    • usuwanie rekordów
    • JOIN
    • operacje na zbiorach danych
    • grupowanie wyników
    • sortowanie
    • zapytania zagnieżdżone
    • klucze prywatne
    • auto inkrementacja
    • wartości domyślne
    ◦         JDBC
    • połączenie Java z bazą danych
    • operacje na bazie danych przy użyciu Java

    Technologie i narzędzia

    ◦         Maven

    • zarządzanie zależnościami
    • budowanie aplikacji
    • wtyczki do Maven
    • etapy budowania projektu
    • zdalne repozytorium Maven
    ◦         GIT
    • tworzenie repozytorium
    • inicjalizacja projektu git
    • dodawanie zdalnego repozytorium do projektu
    • tworzenie commit’ów
    • wrzucanie zmian do zdalnego repozytorium
    • pobieranie repozytorium
    • uaktualnianie lokalnych źródeł
    • gałęzie
    ◦         Spring Boot
    • uruchamianie kontenera HTTP
    • kontenery wbudowane w Spring
    ◦         Spring IoC
    • beany
    • konteksty
    • wstrzykiwanie zależności (Dependency Injection)
    ◦         AspectJ
    • programowanie aspektowe
    • punkty przecięcia
    • wywoływanie aspektów
    ◦         Metody konfiguracji Spring
    • pliki XML
    • Klasy konfiguracyjne
    • Adnotacje
    ◦         Spring MVC
    • wzorzec MVC
    • kontrolery
    • szablony widoków
    • mapowanie zapytań
    • metody zapytań HTTP
    • przekazywanie modelu do widoków
    ◦         Thymeleaf

    ◦         Hibernate
    • konfiguracja hibernate
    • ORM
    • zapytanie w hibernate
    • HQL
    • zapytania przy pomocy kryteriów
    • sesje
    • transakcje
    ◦         XML i JSON

    ◦         JavaFX
    • budowa aplikacji okienkowych
    • kontrolki
    • reagowanie na akcje uzytkownika
    • FXML
    • model MVC w JavaFX
    ◦         Podstawy front-end’u
    • JS
    • HTML
    • CSS
    • Jquery
    • AJAX
    ◦         Testowanie aplikacji w Java
    • JUnit
    • Mockito
    • TDD
    ◦         WebServices

    REST
    • definicja API przy pomocy JSONSchema
    • generacja API przy pomocy Maven
    • klient REST API
    • provider REST API
    ▪         SOAP
    • definicja API przy pomocy xsd i WSDL
    • generacja API przy pomocy Maven
    • klient SOAP API
    • provider SOAP API
    ◦         Scrum

    ◦         Dokumentacje w IT
    • LLD
    • HLD
    • CR
    • PID
    • UM
    ◦         UML
    • diagramy przypadków użycia
    • diagramy klas
    • diagramy sekwencji
    • diagramy aktywności
  • Umiejętności po kursie

    Po ukończeniu kursu uczestnik/czka będzie potrafił/a:
    • Tworzyć aplikacje w języku Java
    • Korzystać z wielu bibliotek wbudowanych języka Java
    • Korzystać z systemu kontroli wersji GIT
    • Używać narzędzia Maven do zarządzania projektem.
    • Stosować się do zasad programowania obiektowego
    • Zastosować programowanie aspektowe
    • Tworzyć aplikacje webowe przy użyciu Spring
    • Wykorzystywać wzorzec odwrócenia zależności (IoC)
    • Tworzyć i posługiwać się relacyjnymi bazami danych
    • Używać Hibernate oraz JDBC do operacji bazodanowych z poziomu Java
    • Tworzyć aplikacje okienkowe przy pomocy JavaFX
    • Tworzyć testy automatyczne aplikacji Java
    • Pracować w metodyce Agile
    • Tworzyć i konsumować Web Services REST oraz SOAP
    • Tworzyć podstawowe diagramy UML
  • Egzamin

    W cenę kursu wliczony jest EGZAMIN

    • 1Z0 811 JAVA FOUNDATIONS ( dla uczestników Kierunek Kariera Zawodowa )

Poinformuj mnie o innym terminie tego szkolenia

Prosimy o tę zgodę z uwagi na przepisy dotyczące wysyłania informacji handlowych drogą elektroniczną oraz przepisy prawa telekomunikacyjnego, aby nasi przedstawiciele mogli skontaktować się z Tobą mailowo. Twoje dane osobowe będą przetwarzane w tym przypadku przez spółki z grupy Comarch na podstawie ich prawnie uzasadnionego interesu. Dowiedz się więcej o tym jak spółki z grupy Comarch przetwarzają dane osobowe.
Na podstawie tej zgody Twoje dane osobowe będą przetwarzane przez spółki z grupy Comarch w celu wysyłki newslettera. Możesz wycofać tę zgodę w dowolnym momencie. Pamiętaj, że wycofanie zgody nie wpływa na zgodność z prawem przetwarzania danych sprzed cofnięcia zgody. Prosimy o Twoją zgodę przede wszystkim z uwagi na przepisy o ochronie danych osobowych. Twoja zgoda jest równoznaczna z akceptacją marketingu bezpośredniego i otrzymywania na wskazany adres e-mail informacji handlowych zawartych w naszym newsletterze. Dowiedz się więcej o tym jak spółki z grupy Comarch przetwarzają dane osobowe.

Podobne szkolenia

Skontaktuj się z naszym konsultantem

Do każdego klienta podchodzimy indywidualnie. Ofertę naszych szkoleń dopasujemy do Państwa potrzeb, oczekiwań i możliwości. 

Zadzwoń lub napisz do nas jeśli napotkasz problem

31-864 Kraków

ul. Prof. Michała Życzkowskiego 33