The aim of this course is to teach object oriented programming and to provide students with the ability to think analytically, analyze problems and design software.
Course Content
This course contains; Introduction to Object Oriented Programming - UML (Unified Modeling Language) ,Classes and Objects - Encapsulation and data hiding,Inheritance and Polymorphism,Abstraction and Interfaces,Object Oriented Analysis and Design,Exception Processing,Collections and Generics, File Processing and Input/Output Operations,Design Patterns,Graphical User Interface (GUI) Programming,Software Development Principles,Introduction to advanced OOP concepts,Project development using OOP principles,Project development using OOP principles.
Course Learning Outcomes
Teaching Methods
Assessment Methods
Defines a unified modeling language
12, 2, 9
A, E, F, G
Performs object-oriented analysis and design
2, 6, 9
A, E, F
Performs file processing and input/output operations
2, 6, 9
A, F
Knows the principles of software development
12, 2, 6, 9
A
Develop projects using OOP principles
2, 9
A, F
Teaching Methods:
12: Problem Solving Method, 2: Project Based Learning Model, 6: Experiential Learning, 9: Lecture Method
Assessment Methods:
A: Traditional Written Exam, E: Homework, F: Project Task, G: Quiz
Course Outline
Order
Subjects
Preliminary Work
1
Introduction to Object Oriented Programming - UML (Unified Modeling Language)
2
Classes and Objects - Encapsulation and data hiding
3
Inheritance and Polymorphism
4
Abstraction and Interfaces
5
Object Oriented Analysis and Design
6
Exception Processing
7
Collections and Generics
8
File Processing and Input/Output Operations
9
Design Patterns
10
Graphical User Interface (GUI) Programming
11
Software Development Principles
12
Introduction to advanced OOP concepts
13
Project development using OOP principles
14
Project development using OOP principles
Resources
Lesson Notes
Course Contribution to Program Qualifications
Course Contribution to Program Qualifications
No
Program Qualification
Contribution Level
1
2
3
4
5
1
Algoritma programlama, bilgisayar uygulaması geliştirme ve yazılım projelerinde kod geliştirme konularında yeterli altyapıya ve bunları iş hayatlarında kullanma yeteneğine sahiptir.
2
Programlama problemleri için bilinen çözüm yöntemlerini ve özel teknikleri kullanır ve uygular.
3
Yazılım uygulamaları için gerekli olan modern teknik ve araçları kullanır.
4
Bireysel olarak ve çok disiplinli takımlarda etkin olarak çalışır.
5
Geliştirilmiş uygulama veya yazılımın test aşamalarını gerçekler ve takip eder.
6
İşyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği, mesleki ve etik sorumluluk, programlama uygulamalarının hukuksal sonuçları konularında farkındalığa sahiptir.
7
Bilgiye erişir ve bu amaçla kaynak araştırması yapar.
8
Yaşam boyu öğrenmenin gerekliliği bilincindedir; bilim ve teknolojideki gelişmeleri izler ve kendini sürekli yeniler.
9
Sözlü ve yazılı, gerektiğinde teknik resimler ve modern araçlar kullanarak etkin iletişim kurar.
10
Yazılım çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkilerinin bilincinde olur; çağın sorunları çözmede ve toplumsal ilerlemede yeni yazılımlar geliştirir.
11
Geliştirdiği yazılımın temiz ve anlaşılır olmasına özen ve dikkat gösterir.
12
Kullanıcı odaklı tasarım ilkelerine riayet eder.
Assessment Methods
Contribution Level
Absolute Evaluation
Rate of Midterm Exam to Success
40
Rate of Final Exam to Success
60
Total
100
ECTS / Workload Table
Activities
Number of
Duration(Hour)
Total Workload(Hour)
Course Hours
0
0
0
Guided Problem Solving
0
0
0
Resolution of Homework Problems and Submission as a Report
0
0
0
Term Project
0
0
0
Presentation of Project / Seminar
0
0
0
Quiz
0
0
0
Midterm Exam
0
0
0
General Exam
0
0
0
Performance Task, Maintenance Plan
0
0
0
Total Workload(Hour)
0
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(0/30)
0
ECTS of the course: 30 hours of work is counted as 1 ECTS credit.
Detail Informations of the Course
Course Description
Course
Code
Semester
T+P (Hour)
Credit
ECTS
OBJECT ORIENTED PROGRAMMING
BPR2114993
Fall Semester
4+0
4
7
Course Program
Cuma 18:30-19:15
Cuma 19:30-20:15
Cuma 20:30-21:15
Cuma 21:30-22:15
Prerequisites Courses
Recommended Elective Courses
Language of Course
Turkish
Course Level
Short Cycle (Associate's Degree)
Course Type
Required
Course Coordinator
Lect. Büşranur ŞERAN
Name of Lecturer(s)
Lect. Büşranur ŞERAN
Assistant(s)
Aim
The aim of this course is to teach object oriented programming and to provide students with the ability to think analytically, analyze problems and design software.
Course Content
This course contains; Introduction to Object Oriented Programming - UML (Unified Modeling Language) ,Classes and Objects - Encapsulation and data hiding,Inheritance and Polymorphism,Abstraction and Interfaces,Object Oriented Analysis and Design,Exception Processing,Collections and Generics, File Processing and Input/Output Operations,Design Patterns,Graphical User Interface (GUI) Programming,Software Development Principles,Introduction to advanced OOP concepts,Project development using OOP principles,Project development using OOP principles.
Course Learning Outcomes
Teaching Methods
Assessment Methods
Defines a unified modeling language
12, 2, 9
A, E, F, G
Performs object-oriented analysis and design
2, 6, 9
A, E, F
Performs file processing and input/output operations
2, 6, 9
A, F
Knows the principles of software development
12, 2, 6, 9
A
Develop projects using OOP principles
2, 9
A, F
Teaching Methods:
12: Problem Solving Method, 2: Project Based Learning Model, 6: Experiential Learning, 9: Lecture Method
Assessment Methods:
A: Traditional Written Exam, E: Homework, F: Project Task, G: Quiz
Course Outline
Order
Subjects
Preliminary Work
1
Introduction to Object Oriented Programming - UML (Unified Modeling Language)
2
Classes and Objects - Encapsulation and data hiding
3
Inheritance and Polymorphism
4
Abstraction and Interfaces
5
Object Oriented Analysis and Design
6
Exception Processing
7
Collections and Generics
8
File Processing and Input/Output Operations
9
Design Patterns
10
Graphical User Interface (GUI) Programming
11
Software Development Principles
12
Introduction to advanced OOP concepts
13
Project development using OOP principles
14
Project development using OOP principles
Resources
Lesson Notes
Course Contribution to Program Qualifications
Course Contribution to Program Qualifications
No
Program Qualification
Contribution Level
1
2
3
4
5
1
Algoritma programlama, bilgisayar uygulaması geliştirme ve yazılım projelerinde kod geliştirme konularında yeterli altyapıya ve bunları iş hayatlarında kullanma yeteneğine sahiptir.
2
Programlama problemleri için bilinen çözüm yöntemlerini ve özel teknikleri kullanır ve uygular.
3
Yazılım uygulamaları için gerekli olan modern teknik ve araçları kullanır.
4
Bireysel olarak ve çok disiplinli takımlarda etkin olarak çalışır.
5
Geliştirilmiş uygulama veya yazılımın test aşamalarını gerçekler ve takip eder.
6
İşyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği, mesleki ve etik sorumluluk, programlama uygulamalarının hukuksal sonuçları konularında farkındalığa sahiptir.
7
Bilgiye erişir ve bu amaçla kaynak araştırması yapar.
8
Yaşam boyu öğrenmenin gerekliliği bilincindedir; bilim ve teknolojideki gelişmeleri izler ve kendini sürekli yeniler.
9
Sözlü ve yazılı, gerektiğinde teknik resimler ve modern araçlar kullanarak etkin iletişim kurar.
10
Yazılım çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkilerinin bilincinde olur; çağın sorunları çözmede ve toplumsal ilerlemede yeni yazılımlar geliştirir.
11
Geliştirdiği yazılımın temiz ve anlaşılır olmasına özen ve dikkat gösterir.