TR EN

NESNE YÖNELİMLİ PROGRAMLAMA DERS TANITIM VE UYGULAMA BİLGİLERİ

Kodu Dersin Adı Yarıyıl Süresi(T+U) Kredisi AKTS Kredisi
BIL201 NESNE YÖNELİMLİ PROGRAMLAMA 3 5 4 8

DERS BİLGİLERİ

Dersin Öğretim Dili : Türkçe
Dersin Düzeyi BACHELOR'S DEGREE, TYY: + 6.Level, EQF-LLL: 6.Level, QF-EHEA: First Cycle
Dersin Türü Zorunlu
Dersin Veriliş Şekli -
Dersin Koordinatörü Assist.Prof. SERKAN GÖNEN
Dersi Veren Öğretim Üyesi/Öğretim Görevlisi Dr.Öğr.Üyesi NİHAL ALTUNTAŞ
Ders Ön Koşulu Yok

AMAÇ VE İÇERİK

Amaç: This course aims to introduce the principles of object-oriented programming, the structure of object-oriented languages, and basic concepts. Students will learn topics such as class structures, object relationships, inheritance, and polymorphism, and will be able to use object-oriented approaches in application development processes.
İçerik: Objects and classes, constructor, static variable, constants, methods, visibility modifiers, temporary objects, invocation of methods to objects, invariants, variable visibility, class abstraction and packaging, upper and lower class concepts, inheritance, multiple meaning, chewing, polygon, abstract class, object oriented design.

DERSİN ÖĞRENME ÇIKTILARI (Öğrenciler, bu dersi başarı ile tamamladıklarında aşağıda belirtilen bilgi, beceri ve/veya yetkinlikleri gösterirler.)

Students taking this course learn basic object-oriented programming (OOP) concepts such as object, class, encapsulation, abstraction, inheritance and polymorphism and can use them effectively in their projects.
Students taking this course will use inheritance and polymorphism features to reduce code duplication and develop flexible and extensible applications.
Students taking this course will manage errors safely with exception management (try-catch structures); perform data reading and writing operations with file operations.
Students taking this course develop independent projects using OOP principles and gain problem solving skills with an object-oriented approach.

HAFTALIK DERS KONULARI VE ÖNGÖRÜLEN HAZIRLIK ÇALIŞMALARI

Hafta Ön Hazırlık Konular Yöntem
1 -Relevant section of references, additional resources and lecture notes. Introduction and Basic Concepts: Overview of object-oriented programming, Differences between structured programming and object-oriented programming, Concepts of object, class, property and method Lectures, Discussion (Question-Answer), Laboratory Practices.
2 -Relevant section of references, additional resources and lecture notes. Classes and Objects: Class definitions and object creation, Constructor and destructor methods, Encapsulation concept and access specifiers (public, private, protected) Lectures, Discussion (Question-Answer), Laboratory Practices.
3 -Relevant section of references, additional resources and lecture notes. 4 Fundamental Principles of Object Oriented Programming: Encapsulation, Abstraction, Inheritance, Polymorphism Lectures, Discussion (Question-Answer), Laboratory Practices.
4 -Relevant section of references, additional resources and lecture notes. Encapsulation and Access Specifiers: Encapsulation to provide data privacy and security, use of public, private, and protected access specifiers, data control with setter and getter methods Lectures, Discussion (Question-Answer), Laboratory Practices.
5 -Relevant section of references, additional resources and lecture notes. Constructor and Destructor Methods: Constructors with and without parameters, Destructors and memory management, Constructor and destructor usage examples Lectures, Discussion (Question-Answer), Laboratory Practices.
6 -Relevant section of references, additional resources and lecture notes. Static and Object Member Variables: Static variables and methods, Differences between static and object member variables, Areas of use of static structures and examples. Lectures, Discussion (Question-Answer), Laboratory Practices.
7 -Relevant section of references, additional resources and lecture notes. Inheritance: Concept of inheritance and its basic features, Multiple inheritance and multiple inheritance problems Lectures, Discussion (Question-Answer), Laboratory Practices.
8 - MID-TERM EXAM -
9 -Relevant section of references, additional resources and lecture notes. Polymorphism: The concept and types of polymorphism, application areas of polymorphism and examples Lectures, Discussion (Question-Answer), Laboratory Practices.
10 -Relevant section of references, additional resources and lecture notes. Abstract Classes and Interfaces: Concepts of abstract classes and interfaces, areas of use of abstract classes and interfaces, comparison of abstract classes and interfaces with practical examples. Lectures, Discussion (Question-Answer), Laboratory Practices.
11 -Relevant section of references, additional resources and lecture notes. Exception Handling: Error types and exception management, catching and handling errors with the try-catch structure, ensuring program safety with exception management. Lectures, Discussion (Question-Answer), Laboratory Practices.
12 -Relevant section of references, additional resources and lecture notes. File reading and writing operations Lectures, Discussion (Question-Answer), Laboratory Practices.
13 -Relevant section of references, additional resources and lecture notes. Collections and Data Structures: collection classes (ArrayList, LinkedList, etc.), use of data structures in object-oriented programming, properties of structures such as HashMap, TreeMap Lectures, Discussion (Question-Answer), Laboratory Practices.
14 -Relevant section of references, additional resources and lecture notes. Design Patterns: Basic design patterns such as Singleton, Factory, Observer, use of design patterns in OOP projects Lectures, Discussion (Question-Answer), Laboratory Practices.
15 - Project work Lectures, Discussion (Question-Answer), Laboratory Practices.
16 - FINAL EXAM -
17 - FINAL EXAM -

KAYNAKLAR

Nesne Tabanlı Programlama (PYTHON) , Prof. Dr. Cahit Karakuş, Balbiti, Haziran 2023.
Nesne Tabanlı Programlama (PYTHON) , Prof. Dr. Cahit Karakuş, Balbiti, Haziran 2023.
Java: Object Oriented Programming, Dr. Ali Orhan Aydın, Pusula Publication, 2012.
Java How to Program, Harvey M. Deitel & Paul J. Deitel, Prentice-Hall. 7. Basım, 2007

ÖLÇME VE DEĞERLENDİRME

Yarıyıl İçi Yapılan Çalışmaların Ölçme ve Değerlendirmesi Etkinlik Sayısı Katkı Yüzdesi Açıklama
(0) Etkisiz (1) En Düşük (2) Düşük (3) Orta (4) İyi (5) Çok İyi
0 1 2 3 4 5

DERSİN PROGRAM ÖĞRENME ÇIKTILARINA KATKISI

KNOWLEDGE
Theoretical
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
Ability to identify, analyze, design, model and solve complex engineering problems based on engineering, science and mathematics fundamentals
4
KNOWLEDGE
Factual
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
Ability to apply engineering design to produce solutions that meet specific needs, taking into account global, cultural, social, environmental and economic factors as well as public health, safety and well-being
3
SKILLS
Cognitive
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
Ability to communicate effectively with various stakeholders
4
SKILLS
Practical
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
The ability to recognize ethical and professional responsibilities in engineering and make informed decisions considering the impact of engineering solutions in their global, economic, environmental and social contexts
3
OCCUPATIONAL
Autonomy & Responsibility
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
The ability to recognize ethical and professional responsibilities in engineering and make informed decisions considering the impact of engineering solutions in their global, economic, environmental and social contexts
2
OCCUPATIONAL
Learning to Learn
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
Ability to acquire new knowledge and find ways to apply it when necessary, using appropriate learning strategies
2
OCCUPATIONAL
Communication & Social
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
Ability to work effectively in a team where its members lead together, create a collaborative and inclusive environment, set goals, plan tasks, and meet goals
2
OCCUPATIONAL
Occupational and/or Vocational
Program Yeterlilikleri/Çıktıları Katkı Düzeyi
0 1 2 3 4 5
1
Ability to design and conduct appropriate experiments, analyze and interpret data, and apply engineering principles to draw conclusions
3

DERSİN İŞ YÜKÜ VE AKTS KREDİSİ

Öğrenme-Öğretme Etkinlikleri İş Yükü
Öğrenme-Öğretme Etkinlikleri Etkinlik(hafta sayısı) Süresi(saat sayısı) Toplam İş Yükü
Lecture & In-Class Activities 14 5 70
Preliminary & Further Study 3 1 3
Land Surveying 3 4 12
Group Work 1 3 3
Laboratory 3 5 15
Reading 1 3 3
Assignment (Homework) 6 2 12
Project Work 3 4 12
Seminar 0 0 0
Internship 0 0 0
Technical Visit 1 1 1
Web Based Learning 0 0 0
Implementation/Application/Practice 3 4 12
Practice at a workplace 1 1 1
Occupational Activity 1 1 1
Social Activity 1 5 5
Thesis Work 5 10 50
Field Study 0 0 0
Report Writing 2 2 4
Final Exam 1 2 2
Preparation for the Final Exam 0 0 0
Mid-Term Exam 1 1 1
Preparation for the Mid-Term Exam 0 0 0
Short Exam 1 1 1
Preparation for the Short Exam 0 0 0
TOTAL 51 0 208
Genel Toplam 208
Toplam İş Yükü / 25.5 8,2
Dersin AKTS(ECTS) Kredisi 8,0