Nazwa przedmiotu:
Zaawansowane techniki programowania
Koordynator przedmiotu:
dr. inż. Paweł Wnuk
Status przedmiotu:
Obowiązkowy
Poziom kształcenia:
Studia II stopnia
Program:
Automatyka i Robotyka
Grupa przedmiotów:
Obowiązkowe
Kod przedmiotu:
ZTPR
Semestr nominalny:
1 / rok ak. 2013/2014
Liczba punktów ECTS:
3
Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
Studia literaturowe 15h, uczestniczenie w wykładzie 15 h, konsultacje projektowe 15 h, praca nad projektem 45 h. W sumie 90 h - 3 ECTS
Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
Wykłady 15 h, konsultacje projektowe 15 h, w sumie 30 h - 1 ECTS
Język prowadzenia zajęć:
polski
Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
Konsultacje projektowe 15 h, praca nad projektem 45 h, w sumie 60 h - 2 ECTS
Formy zajęć i ich wymiar w semestrze:
  • Wykład225h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt225h
  • Lekcje komputerowe0h
Wymagania wstępne:
Znajomość podstaw programowania strukturalnego i obiektowego. Znajomość składni języka C++. Znajomość podstawowych algorytmów i struktur danych, podstaw sieci komputerowych i systemów operacyjnych. Podstawowa znajomość języka UML
Limit liczby studentów:
brak
Cel przedmiotu:
Nauka zaawansowanych technik programowania na przykładzie języka C++
Treści kształcenia:
Przedmiot poświęcony jest zaawansowanym technikom programowania w języku C++. Zaczyna się od przedstawienia filozofii działania języka, krótkiego przypomnienia typów danych i instrukcji, ze szczególnym uwzględnieniem działań preprocesora. Druga część przedmiotu jest poświęcona zaawansowanemu programowaniu zorientowanemu obiektowo - dziedziczeniu wielokrotnemu, klasom abstrakcyjnym, dokładnemu omówieniu zastosowań polimorfizmu. W trzeciej części omówiono programowanie generyczne, szablony klas i funkcji, oraz bibliotekę STL. Na koniec przedstawiono techniki programowania wykorzystywane przy tworzeniu plug-inów, interfejsów GUI, programowaniu zastosowań sieciowych i komunikacji z bazami danych.
Metody oceny:
Końcowa ocena przedmiotu składa się z: - oceny projektu (60%) - oceny uzyskanej z testu egzaminacyjnego (40%)
Egzamin:
tak
Literatura:
Materiały do przedmiotu Bjarne Stroustrup, "Język C++" Victor Shtern "C++ Inżynieria oprogramowania" David Vandevoorde, Nicolai Josuttis, "C++ Szablony" Scott Meyers, "STL w praktyce"
Witryna www przedmiotu:
http://iair.mchtr.pw.edu.pl/studenci
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Efekt ZTPR_W01
Ma rozszerzoną wiedzę na temat zaawansowanych technik programowania w języku C++
Weryfikacja: Test egzaminacyjny
Powiązane efekty kierunkowe: K_W12
Powiązane efekty obszarowe: T2A_W05

Profil ogólnoakademicki - umiejętności

Efekt ZTPR_U01
Potrafi opracować projekt aplikacji komputerowej w oparciu o analizę potrzeb użytkownika
Weryfikacja: Spotkania projektowe
Powiązane efekty kierunkowe: K_U18
Powiązane efekty obszarowe: T2A_U14, T2A_U17
Efekt ZTPR_U02
Potrafi zaprojektować i zaimplementować nowoczesne oprogramowanie wykorzystywane w technice
Weryfikacja: Spotkania projektowe
Powiązane efekty kierunkowe: K_U14
Powiązane efekty obszarowe: T2A_U07, T2A_U19

Profil ogólnoakademicki - kompetencje społeczne

Efekt ZTPR_K01
Rozumie proces ciągłych zmian w językach programowania
Weryfikacja: Test egzaminacyjny
Powiązane efekty kierunkowe: K_K01
Powiązane efekty obszarowe: T2A_K01
Efekt ZTPR_K02
Zna i rozumie cykl powstawania aplikacji w języku C++
Weryfikacja: Spotkania projektowe
Powiązane efekty kierunkowe: K_K05
Powiązane efekty obszarowe: T2A_K04