Course - Procedural and Object-Oriented Programming - TDT4102
Procedural and Object-Oriented Programming
About
About the course
Course content
Basic and practice-oriented programming in C++. The course covers most of the elements in the programming language and selected parts of the standard library. Through the exercises, the students will get extensive experience in the construction, debugging and testing of software.
Learning outcome
Knowledge:
- Has broad and practical oriented knowledge of the C++ programming language.
- Knows the syntax and rules for variable declarations and data types, type conversions, control structures, functions and operators, overloading, classes, inheritance, templates, exceptions.
- Has knowledge about automatic and dynamic variables and the use of pointers.
- Has knowledge about recursion, simple algorithms and data structures.
- Has knowledge of procedural- and object-oriented modularization of code and how code can be organized in multiple files, compilation and linking.
- Has knowledge of the standard libraries, in/out data, commonly used library functions and template-classes.
- Has knowledge of modern development tools, techniques for debugging and simple testing of code.
- Has knowledge about common programming errors, validation of input data, and how to handle failures and unexpected behaviour.
- Has knowledge of diagrams for object-oriented programs.
Skills:
- Can develop a program from description of the problem to a working solution without errors.
- Knows commonly used coding techniques and patterns and is able to work efficiently and iteratively in the construction of a solution.
- Can create procedural programs where the code is reasonably modularized in functions, and object-oriented where the code is organized in classes.
- Is able to choose a solution that fits the problem.
- Is able to write code that is readable, reusable and simple to maintain.
- Is able to read code and understand how the code behaves at runtime.
Competence:
- Can analyse a problem and construct a solution efficiently.
- Can communicate and discuss code solutions and explain how a program behaves. Be aware of differences between programming languages.
- Is able to find tools and aids, find and use documentation of the programming language and standard libraries.
- Be aware of programming aspects that can influence on information security.
Learning methods and activities
Lectures and exercises.
Compulsory assignments
- Øvinger
Further on evaluation
If there is a re-sit examination, the examination form may change from written to oral.
Recommended previous knowledge
The course Information Technology, Introduction (TDT4105 or TDT4110), or similar.
Course materials
To be announced at the start of the term.
Credit reductions
| Course code | Reduction | From |
|---|---|---|
| IT1104 | 3.7 sp | |
| MNFIT114 | 3.7 sp | |
| MNFIT113 | 3.7 sp | |
| MNFIT111 | 3.7 sp | |
| TDT4100 | 3.7 sp | |
| TDT4130 | 3.7 sp |
Subject areas
- Computer and Information Science
- Informatics
Contact information
Course coordinator
Lecturers
Department with academic responsibility
Examination
Examination
Ordinary examination - Spring 2019
Written examination
The specified room can be changed and the final location will be ready no later than 3 days before the exam. You can find your room location on Studentweb.