KURS PROGRAMISTA JAVA OD PODSTAW

Intensywne szkolenie, dzięki któremu zdobędziesz wiedzę i praktyczne umiejętności w programowaniu
w języku Java. Dzięki różnorodnym modułom, opanujesz podstawy programowania oraz zaawansowane techniki tworzenia aplikacji.

Czym zajmuje się Java Developer?

Czym zajmuje się Java Developer?

Java Developer projektuje, rozwija oraz utrzymuje oprogramowanie przy użyciu języka programowania Java. Programiści tworzą aplikacje webowe, desktopowe oraz mobilne, optymalizują kod, debugują aplikacje, a także integrują z systemami i bazami danych. W Javie napisane jest wiele najpopularniejszych programów i aplikacji np. Gmail, Netflix, Amazon, Facebook czy Minecraft. Odpowiedzialności tej roli wymagają zarówno solidnej wiedzy technicznej z zakresu języka Java, jak i umiejętności pracy zespołowej oraz podejścia do rozwiązywania problemów.

Czego się nauczysz?

Poznasz najpopularniejsze frameworki – Spring i Hibernate oraz stworzysz aplikację internetową.

Nauczysz się tworzyć aplikacje wielowątkowe.

Zaczniesz pracować z kolekcjami, plikami i bazami danych.

Zrozumiesz OOP i będziesz w stanie tworzyć interesujące algorytmy.

Poznasz zakres stosowania Java, składnię i historię języka.

Staniesz się poszukiwanym programistą Java na poziomie Juniorskim.

Proces kształcenia

text icon

Lekcja na żywo w aplikacji Zoom

O godzinie 19:00 w dniu zajęć udostępnimy link do wirtualnego pokoju. W ramach spotkań masz możliwość zadawania pytań, prezentowania swojego ekranu oraz bezpośredniej interakcji z instruktorem. Dzięki temu Twoja nauka będzie zbliżona do tradycyjnych zajęć stacjonarnych.

Prace domowe

Obowiązkowe zadania domowe utrwalające wiedzę zdobytą w praktyce.Trener udziela szczegółowych informacji zwrotnych na temat wszystkich ukończonych zadań.

text icon
text icon

Nagrywanie zajęć i materiały

Po każdej lekcji otrzymasz nagranie, abyś mógł odświeżyć pamięć i przejrzeć ważne punkty programu, kiedy i gdzie chcesz.

Kontakt z Trenerem na żywo

Trener, Opiekunowie kursu, inni Kursanci są zawsze dostępni online na ogólnym czacie i są gotowi pomóc w razie jakichkolwiek pytań.

text icon
text icon

Projekt dyplomowy

Projekt dyplomowy na koniec kursu, który można umieścić w CV.

Program kursu

242 GODZIN AKADEMICKICH

Program został opracowany przez praktykujących specjalistów IT z wieloletnim doświadczeniem w komercyjnym tworzeniu oprogramowań dla początkujących w Java.

1. Wprowadzenie do Javy

  • Wprowadzenie do Javy
  • IDE
  • Uruchamianie i kompilowanie programu
  • Typy danych
  • Konwersja typów
  • Operatory Java
  • Priorytet operacji

2. Operatory kontrolne

  • Operatory rozgałęzień
  • Operatory powtórzeń
  • Operatory przejścia

3. System kontroli wersji Git

  • Instalacja Git
  • Łączenie się z projektem
  • Rejestrowanie i tworzenie repozytorium w serwisie GitHub
  • Dlaczego potrzebne są branche
  • Podstawowe polecenia Git

4. Tablice jednowymiarowe

  • Tablice jednowymiarowe
  • Algorytmy sortowania tablic

5. Tablice wielowymiarowe

  • Tablice dwuwymiarowe, trójwymiarowe i n-wymiarowe
  • Operacje na tablicach

1. OOP w Javie - klasy i metody

  • Pojęcie klasy, obiektu, konstruktora
  • Metody
  • Inicjalizacja pól

2. OOP w Javie - interfejsy i klasy abstrakcyjne

  • Pojęcie interfejsu
  • Pojęcie klasy abstrakcyjnej
  • Metody abstrakcyjne

3. OOP w Javie - zasady

  • Hermetyzacja
  • Dziedziczenie
  • Polimorfizm

4. OOP w Javie - polimorfizm i metody statyczne

  • Przeciążanie metod
  • Nadpisywanie metod
  • Słowo kluczowe static
  • Słowo kluczowe final

5. Metody klasy Object

  • Czym jest klasa Object i jaki jest jej cel
  • Badanie metod klasy Object
  • Zasady nadpisywania equals, hashcode
  • Dlaczego potrzebujesz metody toString
  • Zasady nadpisywania metody clone

6. Przetwarzanie ciągów znaków

  • String
  • StringBuilder
  • StringBuffer

7. Wyrażenia regularne

  • Używanie wyrażeń regularnych
  • Jak i gdzie używać
  • Wzorzec, klasy dopasowujące
  • Nauka wyrażeń regularnych
  • Praktyka

8. Wyjątki i błędy

  • Hierarchia wyjątków i błędów
  • Konstrukcja try-catch-finally
  • Własne wyjątki
  • Słowa kluczowe throw, throws

1. Pliki, strumienie wejścia/wyjścia

  • Praca z plikami
  • Bajtowe strumienie wejścia/wyjścia
  • Symboliczne strumienie wejścia/wyjścia
  • Serializacja obiektów

2. Kolekcje i klasy generyczne

  • Lista
  • Zestaw
  • Mapa
  • Generics

3. Zaawansowana analiza kolekcji JDK

  • Ponowna analiza struktury kolekcji
  • Jak działa LinkedList
  • Jak działa HashMap
  • Dlaczego potrzebna jest kolekcja typu Set
  • Czym są drzewa i jak zbudowana jest TreeMap?

1. Funkcje Java 8 (część 1)

  • Data API
  • Interfejsy funkcjonalne
  • Wyrażenia lambda

2. Funkcje pracy z Java 8 (część 2) Opcjonalny Strumieniowe API

  • Opcjonalne
  • Strumieniowe API

3. Główne zmiany w Javie 9-12

  • Var
  • Moduły
  • Przegląd nowego API i konstrukcji składniowych

1. Systemy kompilacji obiektów

  • Co to jest system kompilacji
  • Przegląd istniejących systemów kompilacji
  • Różnica między Ant, Maven, Gradle
  • Podłączanie systemu kompilacji do projektu

2. Praca z Internetem i siecią

  • Dlaczego potrzebujesz architektury klient-serwer?
  • Jak działa Internet
  • Koncepcja serwera WWW
  • Model OSI i protokół TCP/IP
  • Przegląd protokołu HTTP i jego metod

3. Definicja wątków Java

  • Klasa wątków
  • Interfejs Runnable
  • Praca z wątkami
  • Synchronizacja wątków
  • Dzikie wątki

1. Podstawy pracy z XML i JSON

  • Struktura dokumentu XML
  • Schemat DTD, XSD
  • DOM, SAX, STAX
  • JAXB
  • Wprowadzenie do parserów JSON na przykładzie Jacksona

2. Podstawy Servlet API

  • Zapoznanie się z back-endem w Java Enterprise Edition
  • Podstawowe interfejsy i ich implementacje
  • Cykl życia serwletu
  • Pisanie pierwszego serwletu witającego użytkownika w przeglądarce

3. Podstawy API serwletów. Filtr, słuchacz, zakresy

  • Koncepcja serwera aplikacji
  • Przegląd komponentów Filter, Listener
  • Dlaczego potrzebne są zakresy serwletów
  • Pisanie aplikacji internetowej "Kalkulator"

1. Wprowadzenie do HTML, CSS

  • Co to jest układ
  • Nauka języka HTML
  • Dlaczego potrzebujemy stylów?
  • Czym są selektory CSS
  • Praca z wcięciami
  • Praca z tekstem

2. Szybkie prototypowanie za pomocą Bootstrap

  • Dlaczego warto używać Bootstrap
  • Podłączenie do projektu
  • Przegląd głównych komponentów
  • Koncepcja siatki

3. Podstawy szablonów z JSP, biblioteka znaczników JSTL

  • Nauka technologii JSP
  • Czym jest szablonowanie
  • Dynamiczne dane w JSP
  • Zapoznanie się z biblioteką JSTL
  • Podstawowe tagi do działania if, forEach, fmt

1. S.O.L.I.D.

  • Zasady SOLID
  • Analiza zasad na przykładach
  • Praktyczne zastosowanie w bieżącym projekcie

2. Wzorce projektowe (część 1)

  • Teoria wzorców projektowych
  • Grupy wzorców
  • Nauka podstawowych wzorców
  • Fabryka, Konstruktor

3. Wzorce projektowe (część 2)

  • Kontynuacja poznawania podstawowych wzorców
  • Adapter, Single, Fasada, Dekorator
  • Pisanie prostych przykładów przy użyciu wzorców

1. Bazy danych i praca z nimi

  • Koncepcja SZBD
  • Typy baz danych
  • SQL
  • Indeks i sekwencja
  • Klucz podstawowy, klucz obcy

2. JDBC (Java DataBase Connectivity)

  • Wprowadzenie do JDBC
  • Koncepcja sterownika
  • Transakcje
  • Zapytania SQL DML
  • Join, Having, Group By

3. Zaawansowana nauka JDBC

  • ACID i praca z transakcjami
  • Normalizacja, rodzaje relacji między tabelami
  • Rozwiązywanie problemów związanych z pisaniem zapytań SQL

4. Migracja bazy danych (Flyway)

  • Migracja bazy danych
  • Flyway
  • Wyzwalacze
  • Funkcje i procedury składowane

1. Wzorce projektowe w Java Enterprise Edition

  • Teoria wzorców projektowych w języku Enterprise Java
  • Grupy wzorców
  • Front Controller, Session Facade, Transfer Object

2. Spring Core. IoC

  • Wprowadzenie do Spring Framework
  • Typowe przypadki użycia w Spring Framework
  • Koncepcje DI i IOC
  • Pisanie pierwszej aplikacji w celu zapoznania się z technologią

3. Spring Core. AOP

  • Wprowadzenie do programowania zorientowanego aspektowo
  • Dlaczego potrzebna jest kompleksowa funkcjonalność
  • Rodzaje wskazówek
  • Pisanie aspektów

4. Spring MVC. Kontroler. Interceptors

  • Wprowadzenie do wzorca MVC
  • Pojęcie kontrolera
  • Pisanie aplikacji internetowej przy użyciu kontrolerów

5. Spring MVC. Walidacja Bean. Obsługa wyjątków

  • Walidacja danych
  • Obsługa wyjątków

6. Spring Boot

  • Wprowadzenie do Spring Boot
  • Główne różnice w stosunku do Spring Framework
  • Koncepcja startera
  • Tworzenie projektu i jego konfiguracja
  • Pisanie pierwszej aplikacji "Kalkulator"

7. Spring Boot MVC. Szablonowanie

  • Wprowadzenie do Freemarker
  • Przegląd funkcji Thymeleaf
  • Pisanie aplikacji internetowej przy użyciu Thymeleaf

8. Spring Boot. REST (część 1)

  • Wprowadzenie do REST
  • Poznanie czym jest SOAP
  • Różnica między REST i SOAP
  • Koncepcja RESTful API

9. Spring Boot. REST (część 2)

  • Testowanie żądań API przy użyciu Postman
  • Walidacja danych
  • Używanie ResponseEntity
  • Kody stanu
  • Przesyłanie plików

10. Dokumentacja API REST

  • Wprowadzenie do Swagger
  • Dlaczego potrzebujemy dokumentacji API
  • Podłączanie Swaggera do projektu

11. Wprowadzenie do narzędzi rejestrowania i testowania Java

  • Koncepcja rejestrowania
  • Przegląd bibliotek SLF4J, Log4j
  • Testowanie jednostkowe przy użyciu JUnit5
  • Pisanie testów na bieżącym projekcie

1. Java Persistence API

  • Znajomość JPA i implementacji
  • Entity Manager
  • Powiązania
  • Kaskady
  • JPQL

2. Hibernate. Stany obiektów. Sesja Hibernate

  • Wprowadzenie do Hibernate
  • Stany obiektów
  • Koncepcja sesji
  • Pisanie aplikacji przy użyciu Hibernate

3. Hibernate. Relacje. Kaskady. HQL

  • HQL
  • Kryteria
  • Relacje
  • Pisanie aplikacji przy użyciu Hibernate

4. Spring Data JPA

  • Wprowadzenie do Spring Data
  • Dlaczego jest potrzebny
  • Koncepcja repozytorium
  • Pisanie QueryDSL
  • Pisanie kodu przy użyciu Data JP

5. Spring Security. Podstawowe uwierzytelnianie

  • Wprowadzenie do Spring Security
  • Podstawowe zasady zabezpieczania aplikacji internetowych
  • Podstawowa konfiguracja uwierzytelniania
  • Role

6. Spring Security. JWT

  • Wprowadzenie do tokenów sieciowych JSON
  • Odróżnianie zabezpieczeń aplikacji internetowych od REST API
  • Konfigurowanie Spring Security z JWT
  • Podłączanie JWT do projektu REST API

7. Spring Security. Praktyka

  • Praktyczne zastosowanie podstawowych zabezpieczeń w aplikacji webowej
  • Podłączenie Spring Security i JWT do bieżącego projektu REST API

1. DevOps

  • Czym zajmuje się inżynier DevOps
  • Wprowadzenie do AWS
  • EC2
  • S3

2. Amazon: podstawowe usługi

  • RDS
  • ELB
  • Route53
  • AWS CLI
  • Wdrażanie aplikacji w chmurze AWS

3. Architektura mikrousług, Docker / Docker compose

  • Docker jako technologia
  • Plik dokera
  • Zmienne środowiskowe i argumenty
  • Sieć Docker

4. Docker (część 2)

  • Docker inspect
  • Docker compose
  • Wolumin
  • Obrazy Docker hub / AWS

5. Docker (część 3)

  • Jak korzystać z platformy Docker
  • Zapoznanie się z CI/CD
  • Działania w GitHub

1. Przeprowadzenie próbnej rozmowy technicznej

  • Podsumowanie kursu
  • Przeprowadzenie próbnej rozmowy technicznej
  • Odpowiadanie na pytania studentów

1. Szkolenie online „Praca w IT”

  • Pisanie CV (teoria + praktyka)
  • Tworzenie profilu na LinkedIn (teoria + praktyka)
  • Kompetencje miękkie istotne na rozmowie kwalifikacyjnej

1. Obrona pracy dyplomowej

  • Obrona pracy dyplomowej

Pomożemy Ci wybrać!

Jeśli masz pytania dotyczące formatu lub nie wiesz co wybrać, zostaw swój numer,
oddzwonimy i odpowiemy na wszystkie Twoje pytania.

PL +48

Twoje CV po szkoleniu

Certyfikaty

Certyfikat potwierdza, że ukończyłeś nasz kurs i będzie dodatkowym argumentem podczas zatrudnienia.

Stanowisko

Java Developer

Pensja

  • 6 000 PLN - 9 000 PLN
    Młodszy Specjalista
  • 14 370 PLN - 20 000 PLN
    Specjalista
  • 14 370 PLN - 20 000 PLN
    Starszy Specjalista

Umiejętności zawodowe:

  • Realizacja pełnych projektów modularnych lub mikroserwisów: od sklepów internetowych po usługi dostawy jedzenia czy zamawiania taksówek.
  • Strukturyzowanie projektu w taki sposób, aby był skalowalny, a kod czytelny.
  • Tworzenie aplikacji typu web application z implementacją technologii front-end.
  • Tworzenie pełnych usług API dla klientów na bazie iOS, Android oraz dokumentacji API dla klientów przy użyciu Swagger.
  • Umiejętność pisania testów modułowych w celu pokrycia kodu i poprawy jakości programów.
  • Korzystanie z narzędzi deweloperskich, takich jak IntelliJ Idea od JetBrains, Git, Postman.
  • Praca z popularnymi bazami danych, takimi jak PostgreSQL, MySQL oraz wsparcie i optymalizacja kodu starszych projektów.
  • Korzystanie z najpopularniejszego frameworka Spring i technologii ORM, takich jak Hibernate, Spring Data JPA.

Certyfikaty

Certyfikat potwierdza, że ukończyłeś nasz kurs i będzie dodatkowym argumentem podczas zatrudnienia.

Koszt szkolenia

13500 PLN

Istnieje możliwość płatności za kurs w dogodnych ratach. Skontaktuj się z naszym Doradcą, żeby poznać szczegóły!

Rejestracja na szkolenie

PL +48