Program studiów
Program studiów podyplomowych na kierunku programowanie aplikacji Java na Uniwersytecie WSB Merito we Wrocławiu (III edycja).
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
egzamin końcowy
praktyczny projekt końcowy pisany indywidualnie lub grupowo