ostatnia aktualizacja |
|
10.2023 - Inżynieria oprogramowania W04ITE-SI0011G
10.2022 - Praca dyplomowa inżynierska
|
|
|
|
|
autor kursu |
dr inż. Zofia Kruczkiewicz
zespół dydaktyczny |
dr inż. Marek Piasecki
dr inż. Robert Wójcik
semestralny wymiar godzin |
wykład - 20 godzin
projekt - 20 godzin
wymagania wstępne |
Algorytmy i struktury danych - INK9817
Podstawy informatyki - INK9011
Praktyka programowania - INK9100
Pracownia programowania - INK9114
opis kursu |
Przedmiot obejmuje obiektowe podejście do tworzenia oprogramowania oparte na
modelowaniu obiektów i wykorzystaniu ich do tworzenia programów w języku C++.
W ramach przedmiotu główną uwagę zwrócono na podstawowe paradygmaty podejścia
obiektowego (dziedziczenie, polimorfizm, hermetyzację, abstrakcyjne typy
danych, szablony ) w tworzeniu programów podkreślając związek między
projektem programu i jego implementacją w języku C++. Obiektowe elementy języka
są przedstawiane w trakcie omawiania metod programowania obiektowego. Przedmiot
zawiera wykład i laboratorium.
zawartość tematyczna kursu |
wykład
- Cechy podejścia obiektowego w tworzeniu oprogramowania - 1h
- Pojęcie klasy i obiektu, deklarowania składowych, hermetyzacja, klasy i funkcje zaprzyjaźnione - 2h
- Rola konstruktorów i destruktorów, klasy zagnieżdżone - 2h
- Efektywne elementy programowania: przeciążanie operatorów i metod, statyczne składowe klas - 3h
- Tworzenie programów przez rozwój: rola dziedziczenia jednobazowego i wielobazowego, składowe chronione, pokrywanie metod - 4h
- Polimorfizm, abstrakcja klas i funkcji - 2h
- Obiekty dynamiczne: kolekcje i rekurencyjne struktury danych - 2h
- Tworzenie uniwersalnych elementów programów wielokrotnego użycia za pomocą szablonów klas i funkcji - 2h
- Strumienie wejścia/wyjścia - 2h
laboratorium
Proste programy obiektowe: deklarowanie klas z wykorzystaniem hermetyzacji,
stosowanie metod dostępu do pól. Zastosowanie konstruktorów i destruktorów
Tworzenie programów z wykorzystaniem przeciążania metod i operatorów
Stosowanie pól i metod statycznych Zastosowanie dziedziczenia drzewiastego i
wielobazowego, iteracyjny rozwój programów Rozwijanie programów przez
zastosowanie szablonów klas i funkcji. Stosowanie klas zaprzyjaźnionych
Zastosowanie metod wirtualnych. Kolekcje Obiektowe struktury dynamiczne: np.
stos, kolejka, lista. Przetwarzanie prostych scenariuszy zdarzeń. Strumienie
wejścia/wyjścia Zaliczenia.
|