Kurs: Programowanie w C++ lato 2016/17

Język wykładowy Angielski
Opiekun Jean Marie de Nivelle
Liczba godzin 30 (wyk.) 30 (prac.)
Rodzaj K1 - kurs podstawowy
ECTS 5
Polecany dla I roku Nie
Egzamin Nie
Grupy efektów kształcenia Programowanie i projektowanie obiektowe

Opis przedmiotu:

This is a basic course about programming in C++. The course is based on g++, make and Linux. C++ is a language that makes it possible to combine high-level code with efficient execution on standard hardware. Contrary to common belief, the core of C++ is not object-oriented, but based on value semantics. C++ is a language in which one starts at low level, but which allows to move to higher levels of arbitrary abstraction. With a good programming style, low level can be abandonded quickly, and constructions of arbitrary complexity can be defined in a clean fashion. #### Overview * Structure of C++ programs. Separate compilation. Difference between compiling and linking. Use of make. Importance of good code layout. What should be written in comments. * How to design good classes that hide their memory (and other resources) management. Different models for memory management (sharing, nonsharing). How to check for memory leaks. The different ways of referring to a variable (direct, through reference, through const reference, through rvalue reference, through pointer.) * How to use the sequence containers (vector and list) in the STL. When to choose which container. Use of iterators and const_iterators. How to use the associative containers map and unordered_map. How to define your own containers using templates. * Inheritance. When should one use it? When should one not use it? How should one use it? Construction and destruction with inheritance. Abstract classes. * A bit of windows management and graphics (SFML, OpenGL). How to measure where a program spends its time.

Wykłady

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jean Marie de Nivelle
śr 16:00-18:00 (s. 25) 300 52 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Pracownie

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Jean Marie de Nivelle
śr 18:00-20:00 (s. 7) 15 15 0
Marek Szykuła
wt 18:00-20:00 (s. 110) 15 10 0
Marek Szykuła
wt 16:00-18:00 (s. 110) 15 12 0
Jan Otop
pt 10:00-12:00 (s. 7) 15 15 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.


Konsultacje prowadzących:


Imię i nazwisko Pokój Konsultacje
Jean Marie de Nivelle 326 Tuesdays 14.00-16.00. (Other times is also possible. Please ask by email.)
Marek Szykuła 312 E-mail, Discord lub Teams.
Jan Otop 305 Konsultacje: pt 13-15 Dyżur dyrektorski: pt 15-16 Proszę umówić się z wyprzedzeniem e-maile.