Wydział Informatyki
Kierunek studiów Informatyka i ekonometria Poziom i forma studiów pierwszego stopnia inżynierskie stacjonarne
Specjalność / Ścieżka dyplomowania --- Profil kształcenia praktyczny
Nazwa przedmiotu Programowanie obiektowe Kod przedmiotu IE1POB
Rodzaj przedmiotu obowiązkowy
Forma zajęć i liczba godzin W Ć L P Ps T S Semestr 2
30 30 Punkty ECTS 5
Przedmioty wprowadzające Podstawy programowania (IE1PPR),  
Cele przedmiotu

Zapoznanie studentów z podstawowymi technikami programowania obiektowego i realizacją tych technik w wybranych językach programowania (C++, Java, C#). Nauczenie praktycznego stosowanie tych technik w prostych programach w wybranych językach programowania. Nauczenie projektowania i implementowania większych programów z wykorzystaniem programowania obiektowego. Wykształcenie praktyki korzystania z dokumentacji technicznej wybranych języków programowania (przede wszystkim w zakresie API tych języków).

Treści programowe

Wykład:
Pojęcia: klasy, obiektu, metody, pola. Projektowanie klas programu na podstawie opisu słownego systemu. Tworzenie i usuwanie obiektów. Interfejs i implementacja klasy, hermetyzacja. Składowe statyczne. Kompozycja i dziedziczenie jako metody wielokrotnego wykorzystywania klas (reusability). Polimorfizm. Klasy wewnętrzne. Błędy czasy wykonania, mechanizm wyjątków. Klasy generyczne – uzależnione od typu.

Pracownia specjalistyczna:
Tworzenie i usuwanie obiektów. Tworzenie klas. Stosowanie hermetyzacji. Użycie kompozycji i dziedziczenia do tworzenia nowych klas. Rozpoznawanie typu obiektów. Użycie metod wirtualnych. Stosowanie wyjątków do obsługi błędów czasu wykonania. Używanie typów interfejsowych. Tworzenie klas generycznych. Projektowanie klas programu na podstawie opisu słownego systemu. Implementowanie większych programów.

Metody dydaktyczne

wykład problemowy,   programowanie z użyciem komputera,   wykład informacyjny,  

Forma zaliczenia

Wykład: egzamin pisemny (wymagane zaliczenie Pracowni specjalistycznej)

Pracownia specjalistyczna: sprawdziany wiedzy teoretycznej przed zajęciami, ocena wybranych programów realizowanych na zajęciach, większy program/projekt realizowany poza zajęciami

Symbol efektu uczenia się Zakładane efekty uczenia się Odniesienie do kierunkowych efektów uczenia się
EU1 Zna i rozumie techniki programowania obiektowego wraz z zasadami ich użycia w wybranych językach programowania K_W03
EU2 Potrafi tworzyć klasy i obiekty zgodnie z instrukcją, stosując w praktyce techniki programowania obiektowego w wybranym języku programowania K_U04
EU3 Potrafi zaprojektować strukturę programu zgodnie z zasadami programowania obiektowego, przedstawiając składowe klas oraz relacje między klasami K_U03
K_U05
EU4 Potrafi, pracując w zespole, zaimplementować i przetestować zaprojektowany system w wybranym języku programowania obiektowego, w razie potrzeby samodzielnie uzupełniając wiedzę na podstawie dokumentacji technicznej i materiałów źródłowych K_U05
K_U20
Symbol efektu uczenia się Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
EU1 egzamin pisemny W
EU2 ocena programów pisanych na Ps Ps
EU3 ocena zaprojektowanej struktury prostego programu (projektu) Ps
EU4 ocena realizacji programu na podstawie przygotowanego projektu Ps
Bilans nakładu pracy studenta (w godzinach) Liczba godz.
Wyliczenie
1 - Udział w wykładach 30
2 - Udział w pracowni specjalistycznej 30
3 - Przygotowanie do pracowni specjalistycznej (na podstawie wykładów) 10
4 - Udział w konsultacjach 5
5 - Realizacja zadań projektowych (w tym przygotowanie prezentacji) 28
6 - Pisanie (kończenie) poza zajęciami programów z pracowni specjalistycznej 10
7 - Przygotowanie do egzaminu 10
8 - Obecność na egzaminie 2
RAZEM: 125
Wskaźniki ilościowe GODZINY ECTS
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela 67
(4)+(2)+(1)+(8)
2.7
Nakład pracy studenta związany z zajęciami o charakterze praktycznym 78
(6)+(5)+(3)+(2)
3.1
Literatura podstawowa

1. B. Eckel, Thinking in Java : edycja polska : wprowadzenie do programowania zorientowanego obiektowo w sieci WWW, Helion, 2003.
2. B. Stroustrup, Programowanie : teoria i praktyka z wykorzystaniem C++, Helion, 2013.
3. A. Stellman, J. Greene, C#, Helion, 2014.

Literatura uzupełniająca

1. B. Eckel, Thinking in Java. https://github.com/dhananjaygandhi/books/blob/master/java/Thinking%20In%20Java%204th.pdf
2. B. Eckel, Thinking in C++. https://github.com/t-towtdi/B.Eckel-Thinking-in-CPP-vol.1/2

Jednostka realizująca Katedra Oprogramowania Data opracowania programu
Program opracował(a) dr inż. Marek Tabędzki 2021.04.28