Object-oriented programming (C++) (3 cr)
Code: TT00VI01-3053
General information
- Enrollment
-
05.08.2024 - 31.12.2025
Enrollment is ongoing
Enroll to the implementation in OMA
- Timing
-
05.08.2024 - 31.12.2026
Implementation is running.
- Number of ECTS credits allocated
- 3 cr
- Local portion
- 0 cr
- Virtual portion
- 3 cr
- Mode of delivery
- Online
- Unit
- School of ICT and Industrial Management
- Campus
- Karaportti 2
- Teaching languages
- Finnish
- Seats
- 0 - 500
- Degree programmes
- Information and Communication Technology
- Teachers
- Virve Prami
- Teacher in charge
- Janne Salonen
- Groups
-
CAMPUSONLINE_TIVI_NONSTOPCampusOnline implementations (Tivi Nonstop)
- Course
- TT00VI01
Objective
The student is familiar with C++ language and its specific features in object-oriented programming. The student knows how to define a class, instantiate it and write code, in which the objets created are used. The student knows how to make objects interact with each other, how to use inheritance and how to use dynamic binding. The student knows how to use as operator functions.
Content
- automatic and dynamic creation of an object,
- constructors and destructors,
- inheritance, associations, aggregation,
- virtual functions and dynamic binding,
- various parameter types,
- copy constructor,
- operator overloading,
- generic functions
Location and time
Because course is 100% online (Self-Study) course, study place and timetable is up to Student her-/himself.
Materials
Can be find on study environment.
Teaching methods
100% online (Self-Study) course.
Employer connections
N/A
Exam schedules
Can be find on study environment.
International connections
N/A
Completion alternatives
N/A
Student workload
Up to Student her-/himself.
Content scheduling
Up to Student her-/himself.
Evaluation scale
Hyväksytty/Hylätty
Assessment criteria, satisfactory (1)
After completing this course the student will
- understand the difference between a class and an object
- understands why classes are generally speaking necessary and how they are used
- is able to design and use simple classes
- understands the goal of making classes to be applicable for multiple purposes
Assessment criteria, good (3)
After completing this course the student will
- understand the benefits and disadvantages of dynamic memory management when designing and using objects
- when designing classes understand and be prepared for the challenges brought by any dynamic data members (need for a destructor, need for a copy constructor, need for an assignment operator etc.)
- knows how to select a suitable class relation type (inheritance, association, aggregation) according to the situation when using an existing class to implement a new class
- also knows how to implement a new class using the class relation types mentioned above
- know how to use virtual functions and abstract calasses
Assessment criteria, excellent (5)
After completing this course the student will
- knows when designing classes how to be prepared for eventual memory leaks and knows how to prevent these leaks in all situations (exceptional situations included)
- is able to very expertly use pointers,
- knows how to select designs which help re-using the code
Assessment methods and criteria
Pass after you have done 80% of tasks.
Qualifications
Introduction to Programming
Basic knowledge in web programming.
Further information
1. Comparison of object oriented programming in different programming languages
2. Utilizing modelling documents
3. Isolation of user interface and operational logic (MVC)