Oferta dydaktyczna Instytutu Informatyki

Poniższa lista przedstawia przedmioty, które są uczone w Instytucie Informatyki, niektóre z nich co roku, niektóre z mniejszą częstotliwością Każdy student Instytutu Informatyki studiuje wg indywidualnego toku studiów, wybierając (zgodnie z pewnymi zasadami) z tej listy swoje przedmioty.

Jeżeli zastanawiasz się nad studiami u nas, jeżeli chcesz wiedzieć, czy na Uniwersytecie można zostać inżynierem, jeżeli interesuje Cię 1000 zł stypendium miesięcznie - zapraszamy na naszą stronę główną

Programowanie obiektowe (ang.)

Nazwa angielska (title in English): Object-Oriented Programming with C++
Prowadzący (lecturer): Hans de Nivelle
Liczba punktów (ECTS): 7
Liczba punktów 2007 (ECTS since 2007): 6
Rodzaj (type): podstawowy
Rodzaj od 2007 (type since 2007): informatyczny.I1
Liczba godzin (hours in semester):
wykład:30
pracownia:30
Egzamin (exam): tak
Możliwe zajęcia w języku angielskim (can be taught in English): tak
Przedmiot zostal uaktualniony na biezacy rok (updated): nie
Semestr (semester): letni

Wymagania (prerequisites)

Opis (description)

I will explain how C++ should be used in order to write well-structured, readable and maintainable programs. The lecture is essentially the same as the lecture of 2009. See the homepage for details.]

Program (program)

(Probably first two lectures) General Introduction. Advantage of Access Control. Discussion of relevant language constructs: Objects, Message Passing, Runtime Method Selection. Inheritance (I view this as an abbreviation for Interface Sharing). Templates versus Object inheritance. Multiple Inheritance versus Interfaces (as they occur in Java and C#) Dangers of Inheritance.

Garbage Collection. Discussion of Implementation of OO languages.

We move on to C++. References, Objects and Pointers. Difference between const and non const. Allocation/Deallocation. Memory leaks. How to find them.

Structure of a big C++ program. Namespaces, Operator Definitions, Use of Include Guards, Separate Compilation. (I think these constructs must be introduced very early)

Problems with static member initialization in different files. (static initialization order fiasco)

Objects in C++. The main operations on an object: Construction, Copying, Destruction. Exchange, Printing. Operator Definitions.

Inheritance in C++. Virtual Functions. Constructors, desctructors in combination with inheritance.

Use of the STL. Iterators.

Developing Templates. Developing you own Containers. Templates and Friendship. Templates produce unreadable error messages.

Smart Pointers. Boost Library.

Singleton Objects. Static Members, Static Initialization in C++.

Jeżeli jesteś zainteresowany studiowaniem w naszym instytucie, zapraszamy na stronę poświęconą tegorocznej rekrutacji.

Nazwa użytkownika (user name):
Hasło (password):