Kodu | Dersin Adı | Yarıyıl | Süresi(T+U) | Kredisi | AKTS Kredisi |
---|---|---|---|---|---|
COM201 | OBJECT ORIENTED PROGRAMMING | 3 | 5 | 4 | 8 |
DERS BİLGİLERİ |
|
---|---|
Dersin Öğretim Dili : | İngilizce |
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 | |
Ders Ön Koşulu | Yok |
AMAÇ VE İÇERİK |
|
---|---|
Amaç: | This course aims to teach the student the concepts of object-oriented programming and to learn and develop object-oriented programs with the Python programming language. After completing this course, the student is expected to examine the original codes related to object-oriented programming for relevant applications and make changes to them. |
İçerik: | Object-Oriented Programming (OOP) is a fundamental programming that organizes code around objects, which are instances of classes. Objects and classes, constructor, static variable, constants, methods, visibility modifiers, temporary objects, calling methods with objects, immutability, variable visibility, class abstraction, and wrapping, concepts of superclass and subclass, inheritance, multiple meanings, chewing, overloading, 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.) |
---|
Core Programming Skills: Understand OOP Concepts, Create Classes and Objects, Design and Implement Systems, Use Inheritance and Polymorphism, Work with Access Modifiers. |
Advanced Techniques: Encapsulate Data, Overloading and Overriding Methods, Manage Memory with Constructors/Destructors, Work with Abstract Classes and Interfaces, Handle Exceptions. |
Design Patterns and Best Practices: Apply Design Patterns, Follow SOLID Principles, Implement Dependency Injection. |
Practical Application: Work with UML Diagrams, Debug OOP Applications, Collaborate in Teams, Test Object-Oriented Systems. |
Specialized Areas: Optimize Code for Performance, Work with Libraries and Frameworks,mHandle Object Persistence. |
HAFTALIK DERS KONULARI VE ÖNGÖRÜLEN HAZIRLIK ÇALIŞMALARI |
|||
---|---|---|---|
Hafta | Ön Hazırlık | Konular | Yöntem |
1 | The relevant section of the reference, additional resources, and lecture notes | Python Programming Language Basics: Introduction to Python, Why is Python so popular? Python packages, Anaconda, Python editors Resources, Installing Python, Python IDLE, First Python Program, Introduction to Object-Oriented Programming in Python (Primitive concepts and definitions); | Lecture presentation, Discussion(Question-Answer) |
2 | The relevant section of the reference, additional resources, and lecture notes | Python Basics: Integers, Floating-point numbers, Strings, Examples, Exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
3 | The relevant section of the reference, additional resources, and lecture notes | Variables and Scope: Variables, Modifying values, Type conversion, Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
4 | The relevant section of the reference, additional resources, and lecture notes | Selection Control Statements: Introduction, Selection: if statement, More on the if statement, Boolean values, operators and expressions, The None value, Examples, Exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
5 | The relevant section of the reference, additional resources, and lecture notes | Collections: Lists, Tuples, Sets, Ranges, Dictionaries, Converting between collection types, Two-dimensional sequences, Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
6 | The relevant section of the reference, additional resources, and lecture notes | Loop Control Statements: Introduction, The while statement, The for statement, Nested loops, Iterables, iterators and generators, Comprehensions, The break and continue statements, Examples, Exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
7 | The relevant section of the reference, additional resources, and lecture notes | Errors and Exceptions: Errors, Handling exceptions, Debugging programs, Logging, Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
8 | - | MID-TERM EXAM | - |
9 | The relevant section of the reference, additional resources, and lecture notes | Functions: Introduction, Input parameters, Return values, The stack, Default parameters, *args and **kwargs, Decorators, Lambdas, Generator functions and yield, Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
10 | The relevant section of the reference, additional resources, and lecture notes | Classes: Defining and using a class, Instance attributes, Class attributes, Class decorators, Inspecting an object, Overriding magic methods, and Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
11 | The relevant section of the reference, additional resources, and lecture notes | Object-oriented Programming: Introduction, Composition, Inheritance, More about inheritance, Avoiding inheritance, Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
12 | The relevant section of the reference, additional resources, and lecture notes | Packaging and Testing: Modules, Packages, Documentation, Testing, Examples, Exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
13 | The relevant section of the reference, additional resources, and lecture notes | Useful Modules in the Standard Library: Date and time: datetime, Mathematical functions: math, Pseudo-random numbers: random, Matching string patterns: re, Parsing CSV files: CSV, Writing scripts: Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
14 | The relevant section of the reference, additional resources, and lecture notes | Introduction to GUI Programming with Tkinter: Event-driven programming, Tkinter basics, Layout options, Custom events, Putting it all together, Examples, Exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
15 | The relevant section of the reference, additional resources, and lecture notes | Sorting, Searching, and Algorithm Analysis: Introduction, Sorting Algorithms, Searching Algorithms, Algorithm Complexity, Complexities of common operations in Python, Answers to exercises; | Lecture presentation, Discussion(Question-Answer), Laboratory Exercises. |
16 | - | FINAL EXAM | - |
17 | - | FINAL EXAM | - |
KAYNAKLAR |
---|
Main Reference: Object-Oriented Programming in Python Documentation, Hans-Petter Halvorsen, 2013. |
Lecture Notes and Presentations, Asst. Prof. Zeinab HASSANZADEH , 2024-2025 Fall Semester. |
- Python 3 Object-oriented Programming, Dusty Phillips, Second Edition, Published by Packt Publishing Ltd, ISBN: 978-1-78439-878-1. |
https://www.udemy.com/course/python-object-oriented-programming-oop/?utm_source=adwords&utm_medium=udemyads&utm_campaign=Search_DSA_Alpha_Prof_la.EN_cc.ROWEnglish&campaigntype=Search&portfolio=ROW |
Main Reference: Object-Oriented Programming in Python Documentation, Hans-Petter Halvorsen, 2013. |
Lecture Notes and Presentations, Asst. Prof. Zeinab HASSANZADEH , 2024-2025 Fall Semester. |
- Python 3 Object-oriented Programming, Dusty Phillips, Second Edition, Published by Packt Publishing Ltd, ISBN: 978-1-78439-878-1. |
https://www.udemy.com/course/python-object-oriented-programming-oop/?utm_source=adwords&utm_medium=udemyads&utm_campaign=Search_DSA_Alpha_Prof_la.EN_cc.ROWEnglish&campaigntype=Search&portfolio=ROW |
Yardımcı Kaynak: - Python 3 Object-oriented Programming, Dusty Phillips, Second Edition, Published by Packt Publishing Ltd, ISBN: 978-1-78439-878-1. |
https://www.udemy.com/course/python-object-oriented-programming-oop/?utm_source=adwords&utm_medium=udemyads&utm_campaign=Search_DSA_Alpha_Prof_la.EN_cc.ROWEnglish&campaigntype=Search&portfolio=ROW |
Ö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 |
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
|
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
|
SKILLS | |||||||
---|---|---|---|---|---|---|---|
Cognitive | |||||||
Program Yeterlilikleri/Çıktıları | Katkı Düzeyi | ||||||
0 | 1 | 2 | 3 | 4 | 5 | ||
1 |
Ability to communicate effectively with various stakeholders
|
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
|
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
|
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
|
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
|
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
|
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 |