Programming 2: Techniques
Individual course
Core content
- Dividing program code into manageable parts and other style issues. Modularity and use of classes. Basics of object-oriented programming.
- Recursion.
- STL (Standard Template Library). Basic containers (vector, set, map). Iterators.
- Values, references, and pointers. Dynamic memory management. Basics of dynamic data structures. Linked list. Smart pointers.
- Basics of programming graphical user interfaces. Most common GUI widgets. Basics of signal-slot mechanism.
- Version control (in single programmer’s projects).
- Compiling compared to interpreting.
Learning outcomes
A student attaining grade “good” can design and implement smallish programs independently: the student is able to divide the program to parts that can be implemented separately in a practicable way plus design simple data structures and algorithms. The student can evaluate the structure of a program written by another person.
Completion methods
The assessment is based on the points obtained from the weekly exercises and assignments (projects) as well as the grade of the exam.
The course has an electronic exam that needs to be done in an EXAM classroom in Tampere. Please check with the teacher before taking the course exam if the electronic exam is linked to a specific class.
The course material is available in Finnish and English. The programming language is C++, prior experience is not necessary.
More information in the Tampere University study guide.
The course was previously under the name Programming 2: Structures.
You can get a digital badge after completing this course.
ohjelmointi perustaso, olio-ohjelmointi, UI, graafinen käyttöliittymä, koodaus, koodaaminen, devaus, devaaja, devaaminen, GIT, ohjelmointi
Responsible teacher
Further information about the studies
Contact person for applications
Software engineering,
Software systems
Degree student
Finnish