Information
| Unit | INSTITUTE OF NATURAL AND APPLIED SCIENCES | 
| INDUSTRIAL ENGINEERING (MASTER) (WITH THESIS) | |
| Code | EM0021 | 
| Name | Advanced Object Oriented Programming | 
| Term | 2023-2024 Academic Year | 
| Term | Fall | 
| Duration (T+A) | 3-0 (T-A) (17 Week) | 
| ECTS | 6 ECTS | 
| National Credit | 3 National Credit | 
| Teaching Language | Türkçe | 
| Level | Yüksek Lisans Dersi | 
| Type | Normal | 
| Mode of study | Yüz Yüze Öğretim | 
| Catalog Information Coordinator | |
| Course Instructor | 
                                             The current term course schedule has not been prepared yet. 
                                             | 
                                
Course Goal / Objective
This course teaches students advanced topics in object-oriented programming using the gag-oriented programming language.
Course Content
Concepts associated with object-oriented programming will be introduced using C plus plus, Python and Java Programming language and will be explained with examples.
Course Precondition
None
Resources
Downey, A. (2012). Think python: How to think like a computer scientist. Needham: Green Tea Press.
Notes
Downey, A. (2012). Think python: How to think like a computer scientist. Needham: Green Tea Press.
Course Learning Outcomes
| Order | Course Learning Outcomes | 
|---|---|
| LO01 | will be able to learn the concept of Object Oriented Programming. | 
| LO02 | will be able to use Python and C++ efficiently. | 
| LO03 | will be able to develop complex applications. | 
| LO04 | will be able to learn the concept of developing algorithms | 
Relation with Program Learning Outcome
| Order | Type | Program Learning Outcomes | Level | 
|---|---|---|---|
| PLO01 | Bilgi - Kuramsal, Olgusal | Conducts scientific research in industrial engineering, understands, interprets and applies knowledge in his/her field domain both in-depth and in-breadth. | 4 | 
| PLO02 | Bilgi - Kuramsal, Olgusal | Acquires detailed knowledge for methods and tools of industrial engineering and their limitations. | 4 | 
| PLO03 | Bilgi - Kuramsal, Olgusal | Keeps up with the recent changes and applications in the field of Industrial Engineering and examines and learns these innovations when necessary. | 4 | 
| PLO04 | Bilgi - Kuramsal, Olgusal | Identifies, gathers and uses necessary information and data. | |
| PLO05 | Beceriler - Bilişsel, Uygulamalı | Has the ability to develop/propose new and/or original ideas and methods, propose new solutions for designing systems, components or processes. | 5 | 
| PLO06 | Beceriler - Bilişsel, Uygulamalı | Designs Industrial Engineering problems, develops new methods to solve the problems and applies them. | 5 | 
| PLO07 | Beceriler - Bilişsel, Uygulamalı | Designs and performs analytical modeling and experimental research and analyze/solves complex matters emerged in this process. | 5 | 
| PLO08 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Works in multi-disciplinary teams, take a leading role and responsibility and develop solutions for complex problems. | |
| PLO09 | Yetkinlikler - Öğrenme Yetkinliği | Completes and applies the knowledge by using limited resources in scientific methods and integrates the knowledge in the field with the knowledge form various disciplines. | 3 | 
| PLO10 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Uses a foreign language in verbal and written communication at least B2 level of European Language Portfolio. | |
| PLO11 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Presents his/her research findings systematically and clearly in oral or written forms in national and international platforms. | |
| PLO12 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Understands social and environmental implications of engineering practice. | |
| PLO13 | Yetkinlikler - Öğrenme Yetkinliği | Considers social, scientific and ethical values in data collection, interpretation and announcement processes and professional activities. | 5 | 
Week Plan
| Week | Topic | Preparation | Methods | 
|---|---|---|---|
| 1 | Introduction to the object oriented programming | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 2 | Object oriented programming basics | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 3 | Object oriented design | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 4 | Classes | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Soru-Cevap, Tartışma  | 
                                
| 5 | Constructor | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 6 | Inheritances | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Soru-Cevap, Anlatım  | 
                                
| 7 | Encapsulation | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 8 | Midterm | Studying on books and lecture notes | Ölçme Yöntemleri: Ödev  | 
                                
| 9 | Introduction to Python | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 10 | Algorithm Development with Python I | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 11 | Algorithm Development with Python II | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap  | 
                                
| 12 | Application Development I | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap, Alıştırma ve Uygulama  | 
                                
| 13 | Application Development II | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap, Alıştırma ve Uygulama  | 
                                
| 14 | Application Development III | Reading the lecture notes and references related to the subject | Öğretim Yöntemleri: Anlatım, Soru-Cevap, Alıştırma ve Uygulama  | 
                                
| 15 | Application Development IV | Studying on books and lecture notes | Öğretim Yöntemleri: Alıştırma ve Uygulama, Soru-Cevap  | 
                                
| 16 | Final exam | Studying on books and lecture notes | Ölçme Yöntemleri: Yazılı Sınav  | 
                                
| 17 | Final exam | Studying on books and lecture notes | Ölçme Yöntemleri: Ödev  | 
                                
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 | 5 | 70 | 
| Assesment Related Works | |||
| Homeworks, Projects, Others | 0 | 0 | 0 | 
| Mid-term Exams (Written, Oral, etc.) | 1 | 15 | 15 | 
| Final Exam | 1 | 30 | 30 | 
| Total Workload (Hour) | 157 | ||
| Total Workload / 25 (h) | 6,28 | ||
| ECTS | 6 ECTS | ||