- Nazwa przedmiotu:
- Języki programowania
- Koordynator przedmiotu:
- dr inż. Tomasz Marks, Wydział MiNI PW
- Status przedmiotu:
- Obowiązkowy
- Poziom kształcenia:
- Studia I stopnia
- Program:
- Fotonika
- Grupa przedmiotów:
- Obowiązkowe
- Kod przedmiotu:
- JProg
- Semestr nominalny:
- 3 / rok ak. 2012/2013
- Liczba punktów ECTS:
- 5
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład30h
- Ćwiczenia0h
- Laboratorium30h
- Projekt0h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Zakres wiadomości i umiejętności objęty przedmiotem Podstawy programowania
- Limit liczby studentów:
- Cel przedmiotu:
- Celem przedmiotu jest zapoznanie studentów z programowaniem
w języku C++ będącym zaawansowanym narzędziem programowania obiektowego.
Obejmuje przedstawienie elementów składowych tego języka i technik programowania
związanych z wykorzystaniem samodzielnie definiowanych klas uwzględniających
pojęcia hermetyzacji, dziedziczenia, polimorfizmu i metod wirtualnych, a także korzystania z wybranych elementów biblioteki standardowej C++.
- Treści kształcenia:
- Program wykładu:
1. Język C a C++. Definiowanie prostych klas.
2. Typy referencyjne. Domyślne wartości argumentów. Przeciążanie funkcji.
3. Konstruktory, destruktory. Definiowanie operatorów. Strumieniowe operacje we/wy.
4. Wskaźnik this. Operatory new, delete. Funkcje zaprzyjaźnione.
5. Klasa Vector z dynamicznie alokowaną tablicą składowych.
6. Pola i metody statyczne. Dostępność składowych klasy.
7. Klasa z polem obiektowym typu Vector.
8. Dziedziczenie, polimorfizm i metody wirtualne.
9. Jak realizowany jest mechanizm wirtualności? Metody czysto wirtualne i ATD.
10. Obsługa błędów. Obsługa wyjątków. Wyjątki jako mechanizm sterujący.
11. Konwersje, operatory konwersji i konwertery.
12. Definiowanie i wykorzystanie szablonów funkcji.
13. Definiowanie i wykorzystanie szablonów klas.
14. Elementy biblioteki STL.
15. C++ a inne języki programowania obiektowego.
- Metody oceny:
- Zaliczenie przedmiotu wymaga uzyskania zaliczenia zajęć laboratoryjnych. W ramach laboratorium studenci mają napisać szereg małych programów ilustrujących zagadnienia przedstawiane na wykładzie. Obecność na zajęciach laboratoryjnych jest obowiązkowa. Zajęcia laboratoryjne obejmują wykonanie 13 zadań o różnym stopniu trudności, punktowanych w skali od 1 do 5 (maksymalnie). Ocena z laboratorium (ocena pracy semestralnej) jest ustalana przez prowadzących zajęcia na podstawie sumy ważonej ocen ze wszystkich zadań. Nie przewiduje się możliwości poprawiania ocen z poszczególnych zadań. Szczegółowy regulamin zajęć laboratoryjnych dostępny jest na stronie:
www.if.pw.edu.pl./~labkomp
- Egzamin:
- Literatura:
- 1. B. Stroustrup - Język C++, WNT 2002
2. S.B. Lippman - Podstawy języka C++, WNT 1997
3. B. Eckel - Thinking in C++.Edycja polska, HELION 2002
4. N.M. Josuttis - C++ Biblioteka standardowa. Podręcznik programisty, HELION 2003
- Witryna www przedmiotu:
- Uwagi:
Efekty uczenia się