Program studiów

Program studiów podyplomowych na kierunku Programowanie aplikacji Java 

Liczba miesięcy nauki: 9
Liczba godzin: 176
Liczba zjazdów: 11
Liczba semestrów: 2
WSTĘP DO PROGRAMOWANIA W JAVA
(16 godz.)
  • podstawy architektury systemów komputerowych 

  • kompilacja 

  • wirtualna maszyna Java (JVM), JRE, JDK 

  • środowisko programistyczne 

  • struktura programu 

  • CLI 

  • IDE (IntelliJ, Eclipse) 

ALGORYTMY I STRUKTURY DANYCH
(8 godz.)
  • podstawowe pojęcia - problemy, algorytmy, programy 

  • złożoność obliczeniowa algorytmów 

  • podstawowe metody sortowania 

  • struktury danych (tablice, listy, zbiory, mapy, stosy, kolejki, drzewa) 

  • algorytmy rekurencyjne 

PROGRAMOWANIE OBIEKTOWE W JAVIE
(32 godz.)
  • identyfikatory, zmienne i stałe, zasięg zmiennych 

  • instrukcje sterujące i warunkowe (for, while, do, if, case, switch) 

  • struktury danych (tablice, listy, zbiory, mapy) 

  • operacje wejścia/wyjścia 

  • model programowania obiektowego, cechy programowania obiektowego (hermetyzacja, polimorfizm, dziedziczenie) 

  • pojęcie klasy i obiektu, atrybuty i metody 

  • konstruktory 

  • interfejsy i klasy abstrakcyjne 

  • klasy szablonowe 

  • obsługa wyjątków 

  • wątki: tworzenie i zarządzanie 

  • wzorce projektowe 

  • strumienie (streams) 

BAZY DANYCH
(16 godz.)
  • relacyjny model bazy danych 

  • relacje – klucz główny i klucz obcy, typy relacji 

  • podstawy języka SQL 

  • JDBC 

  • bazy noSql (MongoDB) 

ORM – MAPOWANIE OBIEKTOWO-RELACYJNE
(32 godz.)
  • Hibernate 

  • encja 

  • mapowanie złożonych relacji 

WSTĘP DO NARZĘDZI PROGRAMISTYCZNYCH
(8 godz.)
  • biblioteki (własne, Guava, Apache Commons) 

  • budowanie projektów: maven/gradle 

  • zarządzanie kodem: Git, Subversion 

  • tworzenie bibliotek 

PROGRAMOWANIE APLIKACJI WEBOWYCH (SPRING FRAMEWORK)
(24 godz.)
  • idea IoC 

  • WebSerivces vs Restfull 

  • koncepcja komunikacji przy użyciu protokołu HTTP (RestAPI, HTTP verbs, JSON, XML) 

  • koncepcja aplikacji webowej 

  • servery (Tomcat, Netty) 

  • client/server 

  • Spring MVC 

  • podstawowe pojęcia: bean, autowire, configuration, controller 

  • Spring JDBC 

  • Spring Boot 

NARZĘDZIA PROGRAMISTYCZNE
(8 godz.)
  • Continious Integration and Deployment (CI/CD): Jenkins 

  • logowanie (log4j, logback) 

  • clean code 

  • code review 

  • serwery lokalne a chmura (on-premises vs cloud): AWS 

TESTOWANIE APLIKACJI
(16 godz.)
  • testy jednostkowe (jUnit, Mockito) 

  • testy integracyjne (Selenium/Robot Framework, Cucumber/Gherkin) 

SEMINARIUM DYPLOMOWE
(16 godz.)

Seminarium dyplomowe

Forma zaliczenia
Testy
Test końcowy
Mózg
Projekt funkcjonalny - realizowany indywidualnie lub zespołowo