EM0021 Advanced Object Oriented Programming

6 ECTS - 3-0 Duration (T+A)- . Semester- 3 National Credit

Information

Code EM0021
Name Advanced Object Oriented Programming
Semester . Semester
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 Goal

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