- Nazwa przedmiotu:
- Programowanie obiektowe C++
- Koordynator przedmiotu:
- dr inż. Michał Syfert, dr inż. Paweł Wnuk
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Automatyka i Robotyka
- Grupa przedmiotów:
- Obowiązkowe
- Kod przedmiotu:
- PJC
- Semestr nominalny:
- 6 / rok ak. 2014/2015
- Liczba punktów ECTS:
- 3
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- Wykład: 15h
Zapoznanie się z literaturą: 15h
Zapoznanie się z narzędziami: 5h
Realizacja projektu: 40h
Prezentacja i konsultacja projektu: 4h
Przygotowanie raportu: 1h
Razem: 80h = 3 ECTS
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- Wykład: 15h
Prezentacja i konsultacja projektu: 4h
Razem: 19h = 0.75 ECTS
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- Zapoznanie się z narzędziami: 5h
Realizacja projektu: 40h
Prezentacja i konsultacja projektu: 4h
Razem: 49h = 2 ECTS
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład15h
- Ćwiczenia0h
- Laboratorium0h
- Projekt15h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Podstawowa znajomość technik komputerowych. Znajomość programowania strukturalnego oraz podstaw struktur i algorytmów przetwarzania danych. Mile widziana znajomość podstaw programowania wizualnego.
- Limit liczby studentów:
- brak
- Cel przedmiotu:
- Uzyskanie umiejętności w zakresie obiektowej analizy problemu oraz analizy i projektowania klas i ich hierarchii. Umiejętność projektowania, kodowania i testowania programów obiektowych w języku C++.
- Treści kształcenia:
- Składnia podstawowa języka C++: struktura programu, format zapisu kodu, zmienne i stałe - zakres ważności i typy danych, operatory, instrukcje sterujące, praca z plikami źródłowymi, tablice, struktury, wskaźniki i referencje, funkcje. Wstęp do programowania obiektowego Paradygmaty programowania obiektowego. Obiektowa analiza problemu. Zasady dostępu do składowych klas i obiektów. Ochrona atrybutów i metod, ukrywanie implementacji. Funkcje zaprzyjaźnione.
Hierarchie klas i dziedziczenie. Konstruktory i destruktory. Kopiowanie i klonowanie obiektów. Wielodziedziczenie. Różnicowanie zachowań obiektów w zależności od ich typu. Metody wirtualne. Klasy abstrakcyjne. Koncepcja interfejsów. Funkcje czysto wirtualne. Pamięć, zarządzanie obiektami i czasem ich życia. Obsługa błędów: wyjątki i ich przechwytywanie. Przeciążanie operatorów.
- Metody oceny:
- Ocena ostateczna wyznaczana jest na podstawie oceny składowej, przy założeniu konieczności uzyskania wszystkich ocen składowych pozytywnych.
Wykład: sprawdzian testowy z zakresu części wykładowej. Współczynnik wagowy: 0.4
Projekt: ocena wykonanego projektu. Współczynnik wagowy: 0.6
- Egzamin:
- nie
- Literatura:
- Jerzy Grębosz: „Symfonia C++”, Oficyna Kalimach Kayshav
Dattatri: „Język C++. Efektywne programowanie obiektowe”, Helion 2005
Ian Graham, Alan O′Callaghan, Alan Wills: „Metody obiektowe w teorii i w praktyce”, WNT 2004
Nicolai M. Josuttis: „C++. Programowanie zorientowane obiektowo. Vademecum profesjonalisty”, Helion 2003
Bertrand Meyer: :”Programowanie zorientowane obiektowo” , Helion 2005
Bjarne Stroustrup. „Język C+”, WNT 2004
Stanley B. Lippman, Josee Lajoie: „Podstawy języka C++”, WNT 2003
Adrzej Zalewski: "Programowanie w językach C i C++ z wykorzystaniem pakietu Borland C++"
Jesse Liberty : "C++ dla każdego"
Jesse Liberty : "C++. Księga eksperta"
- Witryna www przedmiotu:
- brak
- Uwagi:
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Efekt PJC_W01
- Zna składnię języka C++.
Weryfikacja: Test z części wykładowej. Pozytywna prezentacja aplikacji.
Powiązane efekty kierunkowe:
K_W05
Powiązane efekty obszarowe:
T1A_W02, T1A_W04
- Efekt PJC_W02
- Zna podstawowe pojęcia i konstrucje programowania obiektowego.
Weryfikacja: Test zaliczeniowy części wykładowej. Pozytywna weryfikacja projektu aplikacji.
Powiązane efekty kierunkowe:
K_W05
Powiązane efekty obszarowe:
T1A_W02, T1A_W04
Profil ogólnoakademicki - umiejętności
- Efekt PJC_U02
- Potrafi projektować oprogramowanie w stylu obiektowym.
Weryfikacja: Zaliczenie zrealizowanego projektu.
Powiązane efekty kierunkowe:
K_U05, K_U09
Powiązane efekty obszarowe:
T1A_U05, T1A_U09
- Efekt PJC_U01
- Potrafi zastosować obiektową analizę problemu.
Weryfikacja: Ocena wykonanego projektu aplikacji
Powiązane efekty kierunkowe:
K_U09
Powiązane efekty obszarowe:
T1A_U09
- Efekt PJC_U03
- Potrafi programować w języku C++ przy wykorzystaniu jednego z dostępnych środowisk programistycznych.
Weryfikacja: Ocena wykonanej aplikacji.
Powiązane efekty kierunkowe:
K_U09
Powiązane efekty obszarowe:
T1A_U09
- Efekt PJC_U04
- Potrafi przygotować w zakresie podstawowym dokumentację projektową oprogramowania.
Weryfikacja: Ocena dokumentacji projektowej.
Powiązane efekty kierunkowe:
K_U09
Powiązane efekty obszarowe:
T1A_U09