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. 2017/2018
Liczba punktów ECTS:
3
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ład15h
  • Ćwiczenia0h
  • Laboratorium0h
  • Projekt15h
  • 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:
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:
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:
Uwagi:

Efekty uczenia się

Profil ogólnoakademicki - wiedza

Efekt ZTPR_IIst_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_IIst_U01
Potrafi opracować projekt aplikacji komputerowej w oparciu o analizę potrzeb użytkownika
Weryfikacja: Spotkania projektowe i ocena projektu
Powiązane efekty kierunkowe: K_U18
Powiązane efekty obszarowe: T2A_U14, T2A_U17
Efekt ZTPR_IIst_U02
Potrafi zaprojektować i zaimplementować nowoczesne oprogramowanie wykorzystywane w technice
Weryfikacja: Spotkania projektowe i ocena projektu
Powiązane efekty kierunkowe: K_U14
Powiązane efekty obszarowe: T2A_U07, T2A_U19

Profil ogólnoakademicki - kompetencje społeczne

Efekt ZTPR_IIst_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_IIst_K02
Zna i rozumie cykl powstawania aplikacji w języku C++
Weryfikacja: Spotkania projektowe i ocena projektu
Powiązane efekty kierunkowe: K_K05
Powiązane efekty obszarowe: T2A_K04