Information
Code | CEN201 |
Name | Object Oriented Programming |
Term | 2024-2025 Academic Year |
Semester | 3. Semester |
Duration (T+A) | 3-0 (T-A) (17 Week) |
ECTS | 5 ECTS |
National Credit | 3 National Credit |
Teaching Language | İngilizce |
Level | Lisans Dersi |
Type | Normal |
Mode of study | Yüz Yüze Öğretim |
Catalog Information Coordinator | Prof. Dr. ZEKERİYA TÜFEKCİ |
Course Instructor |
Prof. Dr. ZEKERİYA TÜFEKCİ
(A Group)
(Ins. in Charge)
|
Course Goal / Objective
to learn Object-oriented programming concepts using the C programming language
Course Content
Programming Techniques, Philosophy of Object Oriented Programming, Classes and Objects, Object Oriented Programming Concepts, Encapsulation, Abstraction, Implementation, Interface/Implementation, Inheritance, Polymorphism, Overriding/overloading, Constructors and Deconstructors, Object Oriented Analysis and Design,
Course Precondition
no prerequisites
Resources
Teach Yourself C++ Herbert Schildt
Notes
C++ How to Program H. M. Deitel, P. J. Deitel
Course Learning Outcomes
Order | Course Learning Outcomes |
---|---|
LO01 | Explain the principles of the object oriented programming concept specifically encapsulation, inheritance and polymorphism |
LO02 | Apply the concepts of data encapsulation, inheritance, and polymorphism to computer programs |
LO03 | Design and develop object oriented programs |
LO04 | Can overload functions and operators |
Relation with Program Learning Outcome
Order | Type | Program Learning Outcomes | Level |
---|---|---|---|
PLO01 | Bilgi - Kuramsal, Olgusal | Adequate knowledge of mathematics, science and related engineering disciplines; ability to use theoretical and applied knowledge in these fields in solving complex engineering problems. | |
PLO02 | Bilgi - Kuramsal, Olgusal | Ability to identify, formulate and solve complex engineering problems; ability to select and apply appropriate analysis and modeling methods for this purpose. | 5 |
PLO03 | Bilgi - Kuramsal, Olgusal | Ability to design a complex system, process, device or product to meet specific requirements under realistic constraints and conditions; ability to apply modern design methods for this purpose. | |
PLO04 | Bilgi - Kuramsal, Olgusal | Ability to select and use modern techniques and tools necessary for the analysis and solution of complex problems encountered in engineering practice; ability to use information technologies effectively. | 4 |
PLO05 | Bilgi - Kuramsal, Olgusal | Ability to design and conduct experiments, collect data, analyze and interpret results to investigate complex engineering problems or discipline-specific research topics. | |
PLO06 | Bilgi - Kuramsal, Olgusal | Ability to work effectively in interdisciplinary and multidisciplinary teams; individual working skills. | |
PLO07 | Bilgi - Kuramsal, Olgusal | Ability to communicate effectively verbally and in writing; knowledge of at least one foreign language; ability to write effective reports and understand written reports, prepare design and production reports, make effective presentations, and give and receive clear and understandable instructions. | |
PLO08 | Bilgi - Kuramsal, Olgusal | Awareness of the necessity of lifelong learning; ability to access information, follow developments in science and technology, and constantly renew oneself. | |
PLO09 | Bilgi - Kuramsal, Olgusal | Knowledge of ethical principles, professional and ethical responsibility, and standards used in engineering practice. | |
PLO10 | Bilgi - Kuramsal, Olgusal | Knowledge of business practices such as project management, risk management and change management; awareness of entrepreneurship and innovation; knowledge of sustainable development. | |
PLO11 | Bilgi - Kuramsal, Olgusal | Knowledge of the effects of engineering practices on health, environment and safety in universal and social dimensions and the problems of the age reflected in the field of engineering; awareness of the legal consequences of engineering solutions. |
Week Plan
Week | Topic | Preparation | Methods |
---|---|---|---|
1 | Introduction to Object Oriented Programming | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
2 | Introduction to classes | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
3 | Passing objects to functions, and returning objects from functions | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
4 | Arrays, pointers and references | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
5 | Function overloading | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
6 | Operator overloading | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
7 | Inheritance | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
8 | Midterm exam | Ölçme Yöntemleri: Yazılı Sınav |
|
9 | Virtual functions | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
10 | Polymorphism | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
11 | Templates | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
12 | Exception handling | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
13 | Run-time type identification | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
14 | Casting operators | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
15 | Namespaces | Reading the lecture notes | Öğretim Yöntemleri: Anlatım, Tartışma |
16 | Conversion Functions | Reading the lecture notes | Ölçme Yöntemleri: Yazılı Sınav |
17 | Final Exam | Ölçme Yöntemleri: Yazılı Sınav |
Student Workload - ECTS
Works | Number | Time (Hour) | Workload (Hour) |
---|---|---|---|
Course Related Works | |||
Class Time (Exam weeks are excluded) | 14 | 3 | 42 |
Out of Class Study (Preliminary Work, Practice) | 14 | 3 | 42 |
Assesment Related Works | |||
Homeworks, Projects, Others | 0 | 0 | 0 |
Mid-term Exams (Written, Oral, etc.) | 1 | 12 | 12 |
Final Exam | 1 | 18 | 18 |
Total Workload (Hour) | 114 | ||
Total Workload / 25 (h) | 4,56 | ||
ECTS | 5 ECTS |