Programowanie i projektowanie obiektowe 3501-KOG-PPO2
Przedstawienie podstawowych pojęć i zagadnień występujących w programowaniu obiektowym. W ramach wykładu wprowadzone są pojęcia klasy i obiektu oraz zagadnienia związane z kapsułkowaniem, dziedziczeniem i polimorfizmem. Omówione są podstawy projektowania obiektowego. Wprowadzone są formalizmy do zapisywania projektów i programów obiektowych. W ramach laboratorium studenci mają pisać szereg małych programów ilustrujących kolejne zagadnienia przedstawiane na wykładzie oraz opisywać swoje rozwiązania w przyjętej notacji projektowej.
Szacowana liczba godzin, które student powinien przeznaczyć na osiągnięcie efektów uczenia się: 30h (wykład) + 30h (laboratorium) + 90h pracy własnej.
Obiektowe modelowanie dziedziny
Wprowadzenie do programowania obiektowego
Podstawy programowania obiektowego w Javie
Ochrona danych, kapsułkowanie
Wprowadzenie do UMLa
Tworzenie, inicjalizacja i niszczenie obiektów
Dziedziczenie i polimorfizm
Interfejsy
Wyjątki
Typy uogólnione i kolekcje
Strumienie, serializacja
Wzorce projektowe
Rodzaj przedmiotu
Tryb prowadzenia
Założenia (opisowo)
Efekty kształcenia
Nabyta wiedza:
Student zna podstawowe pojęcia projektowania i programowania obiektowego [K_W08, K_W19, K_W25]
Nabyte umiejętności:
Student potrafi tworzyć proste diagramy klas oraz kompilować i uruchamiać programy w Javie [K_U02, K_U07, K_U13, K_U37, K_U45]
Nabyte kompetencje społeczne (tu podział mógłby ew. zostać – jeśli jest potrzebny - tylko numerki się nie zgadzają):
Kompetencje niezbędne przy tworzeniu oprogramowania i w pracy naukowej [K_K01, K_K02, K_K04, K_K05, K_K08, K_K11, K_K12]
Kryteria oceniania
Na ocenę końcową składają się zadania programistyczne. Końcowa ocena zostanie wyliczona wg wzoru:
L + max((3/2) * E, E + K)
gdzie:
L - liczba punktów z laboratorium (0..30),
K - liczba punktów z klasówki (0..20),
E - liczba punktów z egzaminu (0..40).
Dopuszczalna liczba nieobecności podlegających usprawiedliwieniu: 3
Literatura
J. Gosling, B. Joy, G. Steele, G. Bracha, The Java Language Specification, Java SE 8 Edition, Addison-Wesley Professional, 1st ed., 2014.
J. Gosling, B. Joy, G. Steele, G. Bracha, A. Buckley, D. Smith, The Java Language Specification, Java SE 13 Edition, https://docs.oracle.com/javase/specs/, 2019.
G. Booch, J. Rumbaugh, I. Jacobson, The Unified Modeling Language User Guide, Addison-Wesley, 2017.
E. Gamma, R. Helm, R. Johnson, J. Vlissides, Wzorce projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku, Wydawnictwa Naukowo-Techniczne, 2005.
C. Larman, Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition), Prentice Hall, 3rd ed., 2004.
B. Eckel, Thinking in Java, Prentice Hall, 4th ed., 2006.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: