- Nazwa przedmiotu:
- Zaawansowane programowanie obiektowe i funkcyjne
- Koordynator przedmiotu:
- Dr inż. Marcin Luckner
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Inżynieria i Analiza Danych
- Grupa przedmiotów:
- Wspólne
- Kod przedmiotu:
- 1120-DS000-ISP-0236
- Semestr nominalny:
- 3 / rok ak. 2023/2024
- Liczba punktów ECTS:
- 4
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- 1. godziny kontaktowe – 47 h; w tym
a) obecność na wykładach – 15 h
b) obecność na laboratorium – 30 h
c) konsultacje – 2 h
2. praca własna studenta – 60 h; w tym
a) zapoznanie się z literaturą – 15 h
b) przygotowanie do laboratorium – 45 h
Razem 107 h, co odpowiada 4 pkt. ECTS
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- 1. obecność na wykładach – 15 h
2. obecność na laboratorium – 30 h
3. konsultacje – 2 h
Razem 47 h, co odpowiada 2 pkt. ECTS
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- 1. obecność na laboratorium – 30 h
2. przygotowanie do laboratorium – 45 h
Razem 75 h, co odpowiada 3 pkt. ECTS
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład15h
- Ćwiczenia0h
- Laboratorium30h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Programowanie obiektowe
- Limit liczby studentów:
- .
- Cel przedmiotu:
- Celem przedmiotu jest zaznajomienie studentów z zaawansowanymi cechami języka Java SE. Efektem kształcenia będzie umiejętność tworzenia programów wykorzystujących zaawansowane cechy języka.
- Treści kształcenia:
- Wykład:
1. Wprowadzenie
2. Klasy wewnętrzne i abstrakcyjne
3. Programowanie funkcyjne. Wyrażenie lambda i interfejsy funkcyjne
4. Wyrażenia generyczne
5. Przetwarzanie strumieni danych
6. Struktury dynamiczne
7. Refleksje i Java Beans
8. Zaawansowane przetwarzanie danych
9. Współpraca z bazami danych
10. Sieć i bezpieczeństwo
11. Obliczenia asynchroniczne
12. Czas i lokalizacja
13. Skryptowanie
14. Funkcje natywne
15. Dalszy rozwój programisty Javy
Laboratorium:
Przez połowę semestru studenci wykonują podczas zajęć zadania punktowane (5 lub 6 zadań). Poszczególne zadania ilustrują treści przekazane podczas wykładu. Dodatkowo można wykonać jedno zadanie poprawkowe.
Druga połowa semestru jest przeznaczona na samodzielną realizację zadania projektowego.
- Metody oceny:
- Końcowa ocena wyliczana jest jako średnia z punktów za zadania i z projektu. Do zaliczenia przedmiotu konieczne jest zdobycie przynajmniej 50% punktów za cztery zadania programistyczne i 50% punktów za projekt.
- Egzamin:
- nie
- Literatura:
- 1. C.S. Horstmann, Java 8. Przewodnik doświadczonego programisty, Helion, 2015
2. Herbert Schildt, Java. Kompendium programisty. Wydanie IX, Helion, 2015
3. Robert C. Martin, Czysty Kod, Helion 2010
4. Robert C. Martin, Mistrz Czystego Kodu, Helion 2013
- Witryna www przedmiotu:
- .
- Uwagi:
- .
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Charakterystyka W01
- Zna zaawansowane metody, techniki i narzędzia stosowane przy rozwiązywaniu zadań informatycznych realizowanych w języku Java SE
Weryfikacja: punktowane zadania laboratoryjne
Powiązane charakterystyki kierunkowe:
DS_W08, DS_W14
Powiązane charakterystyki obszarowe:
I.P6S_WG
Profil ogólnoakademicki - umiejętności
- Charakterystyka U01
- Ma umiejętność tworzenia aplikacji w języku Java SE
Weryfikacja: punktowane zadania laboratoryjne
Powiązane charakterystyki kierunkowe:
DS_U11
Powiązane charakterystyki obszarowe:
I.P6S_UW
- Charakterystyka U02
- Potrafi przetwarzać w sposób funkcjonalny strumienie danych
Weryfikacja: Zadanie projektowe
Powiązane charakterystyki kierunkowe:
DS_U13
Powiązane charakterystyki obszarowe:
I.P6S_UW
Profil ogólnoakademicki - kompetencje społeczne
- Charakterystyka K01
- Rozumie potrzebę uczenia się przez całe życie i podnoszenia kompetencji zawodowych związaną z rozwojem języków programowania
Weryfikacja: punktowane zadania laboratoryjne
Powiązane charakterystyki kierunkowe:
DS_K01
Powiązane charakterystyki obszarowe:
I.P6S_KK