Uniwersytet Kardynała Stefana Wyszyńskiego w Warszawie - Centralny System Uwierzytelniania
Strona główna

Programowanie obiektowe WM-I-S1-E2-PO
Laboratorium (LAB) Semestr letni 2019/20

Informacje o zajęciach (wspólne dla wszystkich grup)

Liczba godzin: 30
Limit miejsc: (brak limitu)
Literatura:

Literatura podstawowa:

B. Stroustrup, Jezyk C++, WNT 2002.

B. Eckel, Thinking in C++. Edycja polska, Helion, 2002.

B. Eckel, Ch. Allison, Thinking in C++ edycja polska, tom II, Helion 2004.

Literatura uzupełniająca:

J. Grębosz, Symfonia C++ Standard, tom 1/2, Edition 2008.

S. B. Lippman, J. Lajoie, Podstawy języka C++, WNT, 2003.

S. Prata, Język C++. Szkoła programowania, Helion 2012

Efekty uczenia się:

I1_W13: zna zasady bhp obowiązujące w pracowni komputerowej

I1_U02,I1_U04: potrafi implementować obiektowe typy danych ze szczególnym uwzględnieniem kapsułkowania oraz mechanizmu konstruktorów i destruktorów i stosuje je w podstawowych strukturach danych

I1_U04: potrafi korzystać z dziedziczenia, aby zarządzać obiektami różnych typów mających wspólną klasę bazową w hierarchii klas

I1_U03,I1_U04: potrafi stosować polimorfizm, aby w jednolity sposób implementować procesy wykorzystujące obiekty różnych typów mających wspólną klasę bazową w hierarchii klas

I1_U03,I1_U04: potrafi implementować przeciążone operatory działające na obiektach typów zdefiniowanych przez programistę

I1_U03: potrafi stosować szablony funkcji do implementacji podstawowych procedur wspólnych dla obiektów różnych typów z wykorzystaniem przeciążonych operatorów

I1_U01,I1_U06, I1_U08,I1_U15: potrafi budować niewielkie projekty programistyczne w metodyce obiektowej

I1_K02: jest gotów działać w sposób kreatywny w realizacji niewielkich projektów programistycznych w metodyce obiektowej, jest też gotów do zadawania pytań prowadzących do implementacji modelu właściwie oddającego modelowaną rzeczywistość

I1_K04: jest gotów stosować techniki dostępu do kodu klas wykorzystując kapsułkowanie oraz polimorfizm

szacunkowy nakład pracy studenta:

uczestnictwo w zajęciach 30 godz

przygotowanie do zajęć 15 godz

przygotowanie do weryfikacji 42 godz

konsultacje z prowadzącym 3 godz

Metody i kryteria oceniania:

Dla wszystkich efektów przyjmuje się następujące kryteria oceny we wszystkich formach weryfikacji:

ocena 5: osiągnięty w pełni (bez uchwytnych niedociągnięć)

ocena 4,5: osiągnięty niemal w pełni i nie są spełnione kryteria przyznania wyższej oceny

ocena 4: osiągnięty w znacznym stopniu i nie są spełnione kryteria przyznania wyższej oceny

ocena 3,5: osiągnięty w znacznym stopniu – z wyraźną przewagą pozytywów – i nie są spełnione kryteria przyznania wyższej oceny

ocena 3: osiągnięty dla większości przypadków objętych weryfikacją i nie są spełnione kryteria przyznania wyższej oceny

ocena 2: nie został osiągnięty dla większości przypadków objętych weryfikacją

Ocena końcowa x jest wyznaczana na podstawie wartości

st(w)= 5, jeśli 4,5 < w;

st(w)= 4,5, jeśli 4,25 < w <= 4,5;

st(w)= 4, jeśli 3,75 < w <= 4,25;

st(w)= 3,5, jeśli 3,25 < w <= 3,75;

st(w)= 3, jeśli 2,75 < w <= 3,25;

st(w)= 2, jeśli w <= 2,75

oraz na bazie podanej niżej reguły:

x wyznacza się ze wzoru x=st(z), gdzie z jest średnią ważoną ocen z przeprowadzonych weryfikacji,w których wagi ocen z egzaminów wynoszą 2, a wagi ocen z innych form weryfikacji są równe 1

Zakres tematów:

Ćwiczenie 1: wykorzystanie tablic dwuwymiarowych i arytmetyki wskaźników do znajdowania elementów najmniejszych i największych.

Ćwiczenie 2: Funkcje, szyfrowanie napisów za pomocą tablic wskaźników do tablic kodów.

Ćwiczenie 3: wskaźniki jako argumenty wywołania funkcji, obliczanie i sprawdzanie parametrów figur.

Ćwiczenie 4: dostęp do plików, odczyt tekstu z plików, szyfrowanie i zapis do innego pliku.

Ćwiczenie 5: tablice wskaźników do dynamicznie zaalokowanych C-napisów odczytanych z piku, sortowanie C-napisów.

Ćwiczenie 6: listy dynamiczne: dynamiczne struktury danych wykorzystujące wskaźniki do implementacji, odczyt danych z pliku i zapis do listy dynamicznej.

Ćwiczenie 7: Listy dynamiczne dwukierunkowe: odczyt danych z pliku i zapis do listy, edycja danych w liście.

Ćwiczenie 8: Tworzenie pliku 'log' z komunikatami zawierającymi znaczniki czasowe oraz zmierzone długości czasów wykonania procedur.

Ćwiczenie 9: programowanie obiektowe: projektowanie klas posiadających pola i metody, deklarowanie i zarządzanie tablicami obiektów.

Ćwiczenie 10: enkapsulacja składników klasy, dodawanie konstruktorów i destruktorów do klas zdefiniowanych na poprzednich zajęciach.

Ćwiczenie 11: budowa i zarządzanie dwukierunkowymi listami dynamicznymi obiektów

Ćwiczenie 12: dziedziczenie: budowa i zarządzanie dwukierunkowymi listami dynamicznymi obiektów różnych typów ale dziedziczących po tej samej klasie bazowej.

Ćwiczenie 13: polimorfizm: budowa i zarządzanie dwukierunkowymi listami dynamicznymi obiektów różnych typów ale dziedziczących po tej samej klasie bazowej z metodami polimorficzn

Ćwiczenie 14: operatory globalne i zadeklarowane w klasach, konwersja niejawna zdefiniowanych typów danych: operacje arytmetyczne na obiektach różnych typów przechowywanych w

Ćwiczenie 15: szablony klas: kolejka FIFO obiektów różnych typów.

Grupy zajęciowe

zobacz na planie zajęć

Grupa Termin(y) Prowadzący Miejsca Liczba osób w grupie / limit miejsc Akcje
1 każdy piątek, 9:45 - 11:15, Kampus Wóycickiego Bud. 12, sala 1241
Tomasz Eisenbardt 18/ szczegóły
2 każda środa, 15:00 - 16:30, Kampus Wóycickiego Bud. 21, sala 033
Krzysztof Trojanowski 20/ szczegóły
3 każdy poniedziałek, 9:45 - 11:15, Kampus Wóycickiego Bud. 21, sala 033
Dorota Dąbrowska 20/ szczegóły
4 każdy czwartek, 15:00 - 16:30, Kampus Wóycickiego Bud. 12, sala 1241
Tomasz Eisenbardt 22/ szczegóły
5 każdy poniedziałek, 15:00 - 16:30, Kampus Wóycickiego Bud. 21, sala 033
Dorota Dąbrowska 4/ szczegóły
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Kardynała Stefana Wyszyńskiego w Warszawie.
ul. Dewajtis 5,
01-815 Warszawa
tel: +48 22 561 88 00 https://uksw.edu.pl
kontakt deklaracja dostępności USOSweb 7.0.2.0-1 (2024-03-12)