Programowanie zaawansowane 0600-IS1-2PZ
Profil studiów: ogólnoakademicki
Forma studiów: stacjonarne
Rodzaj przedmiotu: obowiązkowy
Dziedzina i dyscyplina nauki: Informatyka, obszar nauk ścisłych i technicznych
Rok studiów / semestr: 2 / 3
Wymagania wstępne (tzw. sekwencyjny system zajęć i egzaminów): Przedmioty wprowadzające: Podstawy programowania strukturalnego, Wstęp do programowania obiektowego,
Wykład: 30 Laboratorium: 45
Metody dydaktyczne: wykład, zadania rozwiązywane na zajęciach laboratoryjnych, dwa kolokwia sprawdzające wiedzę praktyczną i teoretyczną
Punkty ECTS: 5
Bilans nakładu pracy studenta:
Udział w zajęciach:
- wykład 30h
- laboratorium 45h
Przygotowanie do zajęć:
- wykład 15h
- laboratorium 20h
Zapoznanie z literaturą: 5h
Przygotowanie do kolokwium: 10h
Przygotowanie do egzaminu: 15h
Czas trwania egzaminu: 3h
Udział w konsultacjach: 4h
Wskaźniki ilościowe:
wymagającymi bezpośredniego udziału nauczyciela: 82, 3 ECTS
o charakterze praktycznym: 45, 2 ECTS
Rodzaj przedmiotu
Tryb prowadzenia przedmiotu
Wymagania (lista przedmiotów)
Założenia (opisowo)
Efekty kształcenia
Efekty uczenia się w ramach realizacji przedmiotu:
Zna i rozumie podstawowe techniki programowania obiektowego: abstrakcję danych, hermetyzację, dziedziczenie, polimorfizm. K_W04, K_W05
Zna wykorzystywane współcześnie zaawansowane mechanizmy programowania (korzystanie z klas bibliotecznych, przedefiniowywanie standardowych metod z nadklasy Object języka Java, wykorzystywanie interfejsów, wyrzucanie, przechwytywanie i obsługa wyjątków, definiowanie i używanie klas uogólnionych oraz kolekcji i zbiorów, serializacja, testowanie jednostkowe, generowanie dokumentacji). K_W04, K_W05
Zna założenia i charakterystykę podstawowych wzorców projektowych programowania obiektowego. K_W03, K_W04, K_W05
Potrafi tworzyć obiektowe odwzorowanie dziedziny problemu wraz z realizacją związków między klasami pojęciowymi (specjalizacja/generalizacja, agregacja i kompozycja). K_U06, K_U07, K_U08, K_U24
Potrafi stosować w praktyce (do implementacji poprawnych strukturalnie, łatwych w utrzymaniu i efektywnych programów obiektowych) zaawansowane techniki programowania obiektowego (korzystanie z klas bibliotecznych, przedefiniowanie standardowych metod z nadklasy Object języka Java, wykorzystywanie interfejsów, wyrzucanie, definiowanie i obsługa wyjątków, definiowanie i używanie klas uogólnionych oraz kolekcji i zbiorów, serializacja, testowanie jednostkowe, generowanie dokumentacji). K_U06, K_U07, K_U08, K_U24
Potrafi wychwytywać w dziedzinie problemu podstawowe wzorce projektowe, projektować ich wykorzystanie oraz je implementować. K_U06, K_U08, K_U15, K_U24
Potrafi definiować kompetencje programisty-twórcy klas oraz programisty-klienta oraz stosować techniki programistyczne umożliwiające i ułatwiające współpracę wielu programistów na różnych poziomach współdziałania. K_K02, K_K03
Kryteria oceniania
Ogólna forma zaliczenia: egzamin
Literatura
Literatura podstawowa:
Bruce Eckel - Thinking in Java. Edycja polska. Wydanie IV, 2006.
Bruce Eckel - Thinking in Java, 3rd Edition (edycja angielska) http://www.mindview.net/Books/TIJ/ 2002.
http://wazniak.mimuw.edu.pl/index.php?title=Programowanie_obiektowe
http://wazniak.mimuw.edu.pl/index.php?title=Zaawansowane_projektowanie_obiektowe
Materiały Oracle Academy
Literatura uzupełniająca:
Krzysztof Barteczko - Java od podstaw do technologii. Mikom Multimedia, 2004.
Marcin Lis - Java, ćwiczenia praktyczne. Helion, 2011.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: