| Academic Unit: |
Mechatronics Engineering Department |
| Mode of Delivery: |
Face to face |
| Prerequisites: |
MTE 291 |
| Language of Instruction: |
English |
| Level of Course Unit: |
Undergraduate |
| Course Coordinator: |
- - |
| Course Objectives: |
The objective of this course is to provide students with a thorough understanding of both basic and advanced concepts in C++ programming, with a focus on object-oriented programming principles. The course aims to equip students with the necessary skills to apply these concepts in the field of mechatronics engineering, enabling them to design and develop complex systems that integrate hardware and software components. By the end of the course, students will have a solid foundation in C++, be proficient in applying its features in engineering solutions, and be prepared to tackle real-world engineering challenges with innovative and efficient software solutions. |
| Course Contents: |
Overview of C++ syntax and basic language features, fundamental programming concepts in C++, const qualifiers, function prototyping, function overloading, analysis of C++ building blocks, understanding pointers, memory allocation/deallocation, practical applications in mechatronic engineering, introduction to references in C++, usage in function arguments and return values, encapsulation, information hiding, class features, member functions, access control, implementing single inheritance, exploration of base and derived classes, inheritance implications, polymorphism in C++, virtual functions, runtime binding, v-table concepts, defining and utilizing abstract classes, implementing interfaces, up/down casting in inheritance hierarchies. |
| Learning Outcomes of the Course Unit (LO): |
- 1- Develop a strong foundation in C++ basics, including syntax, programming concepts, and critical non-object-oriented features.
- 2- Gain expertise in pointers and references, crucial for effective memory management and software development in mechatronic systems.
- 3- Master class-related concepts like encapsulation, information hiding, and class structures, vital for object-oriented design.
- 4- Acquire the ability to implement and understand single inheritance, enhancing capabilities in designing complex software systems.
- 5- Develop skills in polymorphism and dynamic binding, essential for creating flexible and efficient object-oriented designs.
- 6- Learn to effectively use abstract classes and interfaces, key for advanced and flexible software design and implementation in mechatronics engineering.
|
| Planned Learning Activities and Teaching Methods: |
Classroom discussion, computer laboratory work, project presentations |
| Week | Subjects | Related Preperation |
LO |
| 1 |
Introduction to Basic C++ Assumptions |
Textbook Ch 1 |
1 |
| 2 |
Essential Language Features in C++ |
Textbook Ch 2 |
1 |
| 3 |
Indirect Addressing – Pointers |
Textbook Ch 3 |
2 |
| 4 |
Indirect Addressing – References |
Textbook Ch 4 |
2 |
| 5 |
Classes |
Textbook Ch 5 |
3 |
| 6 |
Implementing Hierarchies with Single Inheritance |
Textbook Ch 6 |
4 |
| 7 |
Dynamic Binding through Polymorphism |
Textbook Ch 7 |
5 |
| 8 |
Abstract Classes |
Textbook Ch 8 |
6 |
| 9 |
Advanced Concepts in OOP |
Textbook Ch 5-8 |
3,5,6 |
| 10 |
In-Depth Exploration of Object-Oriented Programming Principles |
Textbook Ch 1-8 |
1,2,3,4,5, |
| 11 |
Advanced Inheritance and Polymorphism |
Textbook Ch 6-7 |
4,5 |
| 12 |
Abstract Classes and Interface Design |
Textbook Ch 8 |
3,6 |
| 13 |
Integrating Advanced OOP Concepts |
Textbook Ch 1-8 |
1, 2, 3, 4 |
| 14 |
Course Review and Synthesis |
Textbook Ch 1-8 |
1, 2, 3, 4 |
At Kadir Has University, a Semester is 14 weeks; The weeks 15 and 16 are reserved for final exams.
THE RELATIONSHIP BETWEEN COURSE LEARNING OUTCOMES (LO) AND PROGRAM QUALIFICATIONS (PQ)
| # |
PQ1 |
PQ2 |
PQ3 |
PQ4 |
PQ5 |
PQ6 |
PQ7 |
PQ8 |
PQ9 |
PQ10 |
| LO1 |
|
|
|
|
|
|
|
|
|
|
| LO2 |
|
|
|
|
|
|
|
|
|
|
| LO3 |
|
|
|
|
|
|
|
|
|
|
| LO4 |
|
|
|
|
|
|
|
|
|
|
| LO5 |
|
|
|
|
|
|
|
|
|
|
| LO6 |
|
|
|
|
|
|
|
|
|
|
Contribution: 1 Low, 2 Average, 3 High