Nazwa przedmiotu:
Java - obiektowe programowanie aplikacji multimedialnych
Koordynator przedmiotu:
Krystian IGNASIAK
Status przedmiotu:
Fakultatywny dowolnego wyboru
Poziom kształcenia:
Studia I stopnia
Program:
Telekomunikacja
Grupa przedmiotów:
Przedmioty techniczne
Kod przedmiotu:
OPA
Semestr nominalny:
5 / rok ak. 2018/2019
Liczba punktów ECTS:
4
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
100
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
3
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
3
Formy zajęć i ich wymiar w semestrze:
  • Wykład30h
  • Ćwiczenia0h
  • Laboratorium15h
  • Projekt0h
  • Lekcje komputerowe0h
Wymagania wstępne:
Zaliczenie przedmiotów Programowanie obiektowe i Programowanie zdarzeniowe
Limit liczby studentów:
60
Cel przedmiotu:
Zapoznanie studentów z zaawansowanymi technikami programowania współbieżnego, rozproszonego i sieciowego w językach Java i Python. Zapoznanie studentów z zaawansowanymi pakietami obu języków stosowanymi w programowaniu multimediów. Zapoznanie studentów z praktycznym wykorzystaniem narzędzi programistycznych w tworzeniu aplikacji multimedialnych.
Treści kształcenia:
Treści wykładu: 1. Wprowadzenie, podstawowe pojęcia programowania obiektowego, zdarzeniowego, współbieżnego, rozproszonego, sieciowego (2h); 2. Programowanie współbieżne, zarządzanie procesami, wątkami, synchronizacja (2h); 3. Programowanie sieciowe: protokoły TCP/IP oraz UDP, strumienie na wtyczkach (sockets), serwer obiektów, program typu czat (2h); 4. Programowanie sieciowe: RPC, zdalne wywołanie metod, RMI (2h); 5. Programowanie sieciowe: obsługa obiektów w heterogennym środowisku CORBA (2h); 6. Obiektowy model dokumentu, XML (2h); 7. Serwisy WWW, protokół HTTP, przygotowanie zawartości dynamicznej, serwlety, PHP, JSP, JSF, model REST (4h); 8. Podstawy Pythona, systemy zarządzania treścią, biblioteka Django (4h); 9. Dostęp do baz danych w systemach generowania zawartości dynamicznej, JDBC (2h); 10. Serwisy sieciowe, model EbXML(UBL), UDDI-WSDL-SOAP, WADL (4h); 11. Architektura Java EE (4h). Zajęcia laboratoryjne mają na celu praktyczne zapoznanie słuchaczy z metodami oprogramowania multimediów: 1. Oprogramowanie współbieżnego, rozproszonego systemu w architekturze klient-serwer (6h); 2. Realizacja strony internetowej z wykorzystaniem Pythona/Django (3h); 3. Realizacja dynamicznego serwisu WWW z wykorzystaniem JDBC i aplikacji XML (2h); realizacja serwisu sieciowego w architekturze Java EE (4h).
Metody oceny:
Przedmiot jest oceniany na podstawie sumy punktów uzyskanych z dwóch sprawdzianów przeprowadzanych na zajęciach wykładowych (maksymalnie 50 punktów) i obrony zadań laboratoryjnych prowadzonych w zespołach dwuosobowych (maksymalnie 50 punktów). Warunkiem zaliczenia przedmiotu jest uzyskanie łącznie co najmniej 51 punktów (na 100 możliwych) przy minimum 30 punktach z części za sprawdziany.
Egzamin:
nie
Literatura:
1. W. Skarbek: Multimedia: Algorytmy i standardy kompresji, AOW PLJ, Warszawa 1999; 2. W. Skarbek: Multimedia: Sprzęt i oprogramowanie, AOW PLJ, Warszawa 1999; 3. Java Tutorial, http://docs.oracle.com/javase/tutorial/ 4. B. Eckel, Thinking in Java. Edycja polska, wyd. IV, Helion, 2006 5. Dokumentacja Pythona, http://python.org/doc/ 6. Dokumentacja Django, https://docs.djangoproject.com/en/1.3/ 7. Dokumentacja Java Enterprise Edition, http://www.oracle.com/technetwork/java/javaee/documentation/index.html 8. Java EE Tutorial, http://docs.oracle.com/javaee/6/tutorial/doc/ 9. K. Rychlicki-Kicior, Java EE 6. Programowanie aplikacji WWW, Helion 2010 10. D. Geary, C. S. Horstmann, JavaServer Faces, Helion 2011
Witryna www przedmiotu:
http://ztv.ire.pw.edu.pl/opa/
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Charakterystyka OPA-W1
Ma podstawową wiedzę na temat programowania obiektowego, zdarzeniowego, współbieżnego w Javie
Weryfikacja: Sprawdzian 1
Powiązane charakterystyki kierunkowe: K_W04
Powiązane charakterystyki obszarowe: I.P6S_WG
Charakterystyka OPA-W2
Ma podstawową wiedzę na temat protokołów TCP/IP i UDP oraz metod tworzenia protokołów sieciowych
Weryfikacja: Sprawdzian 1
Powiązane charakterystyki kierunkowe: K_W04, K_W05, K_W08, K_W13
Powiązane charakterystyki obszarowe: I.P6S_WG
Charakterystyka OPA-W3
Ma podstawową wiedzę na temat systemów zarządzania treścią
Weryfikacja: Sprawdzian 1
Powiązane charakterystyki kierunkowe: K_W15, K_W04, K_W05, K_W13
Powiązane charakterystyki obszarowe: III.P6S_WG.o, I.P6S_WG
Charakterystyka OPA-W4
Ma podstawową wiedzę na temat obiektowego modelu dokumentu, serwisów sieciowych i architektury Java Enterprise Edition
Weryfikacja: Sprawdzian 2
Powiązane charakterystyki kierunkowe: K_W04, K_W05, K_W13, K_W14, K_W15
Powiązane charakterystyki obszarowe: I.P6S_WG, III.P6S_WG.o

Profil ogólnoakademicki - umiejętności

Charakterystyka OPA-U1
Potrafi zaprojektować, zaimplementować, uruchomić i przetestować współbieżny i rozproszony system w Javie w architekturze klient-serwer
Weryfikacja: Obrona zadania laboratoryjnego 1
Powiązane charakterystyki kierunkowe: K_U01, K_U03, K_U05, K_U09, K_U13
Powiązane charakterystyki obszarowe: I.P6S_UW, III.P6S_UW.2.o, I.P6S_UU, III.P6S_UW.4.o, III.P6S_UW.3.o
Charakterystyka OPA-U2
Potrafi zaprojektować dynamiczną stronę internetową z wykorzystaniem systemu zarządzania treścią
Weryfikacja: Obrona zadania laboratoryjnego 2
Powiązane charakterystyki kierunkowe: K_U01, K_U03, K_U05, K_U09, K_U13
Powiązane charakterystyki obszarowe: I.P6S_UW, III.P6S_UW.2.o, I.P6S_UU, III.P6S_UW.4.o, III.P6S_UW.3.o
Charakterystyka OPA-U3
Potrafi zdefiniować i zaimplementować serwis sieciowy w środowisku Java Enterprise Edition
Weryfikacja: Obrona zadania laboratoryjnego 3
Powiązane charakterystyki kierunkowe: K_U03, K_U05, K_U09, K_U13, K_U01
Powiązane charakterystyki obszarowe: I.P6S_UU, I.P6S_UW, III.P6S_UW.4.o, III.P6S_UW.2.o, III.P6S_UW.3.o

Profil ogólnoakademicki - kompetencje społeczne

Charakterystyka OPA-K1
Potrafi pracować indywidualnie i w zespole
Weryfikacja: Obrona zadań laboratoryjnych
Powiązane charakterystyki kierunkowe: K_K03, K_K04
Powiązane charakterystyki obszarowe: