Wydział Informatyki
Kierunek studiów Informatyka Poziom i forma studiów pierwszego stopnia inżynierskie niestacjonarne
Specjalność / Ścieżka dyplomowania --- Profil kształcenia ogólnoakademicki
Nazwa przedmiotu Programowanie aplikacji WWW w technologii Java Kod przedmiotu INZ1PAWJ
Rodzaj przedmiotu obieralny
Forma zajęć i liczba godzin W Ć L P Ps T S Semestr 4
15 15 Punkty ECTS 5
Przedmioty wprowadzające Bazy danych (INZ1BDA),   Programowanie obiektowe (INZ1POB),   Sieci komputerowe (INZ1SKO),   Wprowadzenie do aplikacji WWW (INZ1WAW),  
Cele przedmiotu

Zaznajomienie studentów z architekturą sieci WWW, modelem jej działania oraz podstawowymi protokołami. Prezentacja koncepcji aplikacji WWW, przekroju technik oraz wzorców programistycznych wykorzystywanych w ramach sieci informacyjnej. Mechanizmy sesji, ciasteczek, parametrów żądania. Zdobycie wiedzy i umiejętności w zakresie tworzenia aplikacji WWW z wykorzystaniem technologii opartych o specyfikację Java EE (Java Servlets, framework Spring).

Odniesienia do standardu SFIA:
Programming/software development PROG - poziom 3
Software design SWDN - poziom 3
Testing TEST - poziom 1

Treści programowe

Wykład:
1. Aplikacje WWW w środowisku Java - serwlety. Architektura sieci WWW. Koncepcja aplikacji WWW. Definicja aplikacji i zadania związane z jej dystrybucją.
2. Elementy aplikacji WWW związane z wymianą danych. Kontekst aplikacji WWW. Model zdarzeń aplikacji.
3. Zarządzanie kontenerem serwletów. Bezpieczeństwo aplikacji.
4. Architektura REST (Representational state transfer).
5. Biblioteki oparte o specyfikację Serlvets: SpringMVC+Thymeleaf. Automatyczna konfiguracja za pomocą Spring Boot. Wykorzystanie adnotacji oraz technologii Dependency Injection. Spring Data. Spring Security. Techniki i wzorce programistyczne wykorzystywane w tworzeniu aplikacji WWW.

Pracownia specjalistyczna:
1. Przygotowanie środowiska deweloperskiego oraz produkcyjnego aplikacji. Zarządzanie kontenerem serwletów.
2. Implementacja aplikacji WWW w środowisku Java opartej o serwlety. Elementy aplikacji WWW związane z wymianą danych. Kontekst aplikacji WWW. Model zdarzeń aplikacji.
3. Implementacja wzorca MVC. Interfejs Rest, bazy danych.
4. Tworzenie aplikacji w oparciu o framework Spring. Wykorzystanie biblioteki Spring Boot do szybkiego tworzenia aplikacji i jej zależności. Adnotacji oraz DI. Uwierzytelnianie i autoryzacja dostępu do zasobów.

Metody dydaktyczne

metoda projektów,   ćwiczenia przedmiotowe,   programowanie z użyciem komputera,   burza mózgów,   wykład problemowy,   prelekcja,  

Forma zaliczenia

Wykład: zaliczenie pisemne.
Pracownia specjalistyczna: zadania praktyczne dotyczące technologii Java Servlets i projekty implementacyjne aplikacji WWW w technologii Spring realizowane w grupach.

Symbol efektu uczenia się Zakładane efekty uczenia się Odniesienie do kierunkowych efektów uczenia się
EU1 architekturę sieci WWW, identyfikuje i wyjaśnia zasady działania protokołów i standardów dla tego środowiska INF1_W08
INF1_W13
EU2 zasady projektowania i programowania aplikacji WWW INF1_W04
INF1_W11
EU3 popularne elementy technologii wykorzystywane do tworzenia aplikacji WWW. Potrafi dobrać technologię właściwą do specyfiki danego projektu INF1_W07
INF1_W09
EU4 dobrać i przeprowadzić właściwą procedurę testową komponentów aplikacji WWW i zdiagnozować błędy INF1_U06
INF1_U13
INF1_K01
EU5 zaprojektować i zaimplementować aplikację WWW w wybranej technologii z uwzględnieniem potrzeb użytkownika INF1_U04
INF1_U05
INF1_U07
INF1_U11
EU6 zainstalować i skonfigurować środowisko niezbędne do uruchomienia aplikacji WWW (serwer oraz wymagane narzędzia po stronie klienta) INF1_U08
INF1_U12
INF1_U13
EU7 optymalizacji realizowanych aplikacji pod względem wykorzystywanych zasobów H1_K03
Symbol efektu uczenia się Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
EU1 zaliczenie pisemne W
EU2 zaliczenie pisemne W
EU3 zaliczenie pisemne W
EU4 realizacja zadań implementacyjnych i projektów na pracowni specjalistycznej Ps
EU5 realizacja projektów na pracowni specjalistycznej Ps
EU6 realizacja projektów i zadań na na pracowni specjalistycznej Ps
EU7 realizacja projektów na pracowni specjalistycznej Ps
Bilans nakładu pracy studenta (w godzinach) Liczba godz.
Wyliczenie
1 - Udział w wykładach 15
2 - Udział w pracowni specjalistycznej 14
3 - Przygotowanie do pracowni specjalistycznej 15
4 - Opracowanie sprawozdań z pracowni i wykonanie zadań domowych (prac domowych) 30
5 - Udział w konsultacjach 4
6 - Realizacja zadań projektowych (w tym przygotowanie prezentacji) 37
7 - Przygotowanie do zaliczenia 10
RAZEM: 125
Wskaźniki ilościowe GODZINY ECTS
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela 33
(1)+(5)+(2)
1.3
Nakład pracy studenta związany z zajęciami o charakterze praktycznym 96
(3)+(2)+(4)+(6)
3.8
Literatura podstawowa

1. Dokumentacja https://jakarta.ee/specifications/platform/10/jakarta-platform-spec-10.0
2. Dokumentacja https://spring.io/
3. Krzysztof Rychlicki-Kicior, JavaEE 6. Programowanie aplikacji WWW, Helion
4. Craig Walls, Spring w akcji, Wydanie IV, Helion

Literatura uzupełniająca

1. Vishal Layk, Java. Projektowanie aplikacji WWW, Helion
2. Sharma Ashish-Sarin, Spring Framework wprowadzenie do tworzenia aplikacji - Wydanie II, Helion

Jednostka realizująca Katedra Systemów Informacyjnych i Sieci Komputerowych Data opracowania programu
Program opracował(a) dr inż. Urszula Kużelewska 2024.06.19