Course Information
SemesterCourse Unit CodeCourse Unit TitleT+P+LCreditNumber of ECTS Credits
2CPP110Object-Oriented Programming2+2+035

 
Course Details
Language of Instruction Turkish
Level of Course Unit Associate Degree
Department / Program Computer Programming
Type of Program Formal Education
Type of Course Unit Compulsory
Course Delivery Method Face To Face
Objectives of the Course The objective of this course unit is to study the principles of object-oriented designing methodology, and the design of practical programs by using the Java programming language.
Course Content The basic concepts of object designing principles, Java program structure, Standard library, Functions overloading and templates, data abstraction principles, classes, constructors, destructors, inheritans, protected members, polymorphism.
Course Methods and Techniques Theory and Practice.
Prerequisites and co-requisities None
Course Coordinator None
Name of Lecturers Instructor Zeki ÇIPLAK
Assistants None
Work Placement(s) No

Recommended or Required Reading
Resources A.B. Altıntaş, Java Programlama Dili ve Yazılım Tasarımı, Papatya Bilim, 7. Basım, 2016, ISBN: 9789756797402.
Lectures, Question-Answer.
Bir grup projesi
Vize ve Final Sınavları

Course Category
Mathematics and Basic Sciences %10
Engineering %10
Engineering Design %20
Social Sciences %0
Education %0
Science %0
Health %0
Field %60

Planned Learning Activities and Teaching Methods
Activities are given in detail in the section of "Assessment Methods and Criteria" and "Workload Calculation"

Assessment Methods and Criteria
In-Term Studies Quantity Percentage
Mid-terms 1 % 30
Quizzes 2 % 10
Final examination 1 % 60
Total
4
% 100

 
ECTS Allocated Based on Student Workload
Activities Quantity Duration Total Work Load
Course Duration 14 4 56
Hours for off-the-c.r.stud 14 3 42
Mid-terms 1 10 10
Practice 2 5 10
Final examination 1 20 20
Total Work Load   Number of ECTS Credits 5 138

 
Course Learning Outcomes: Upon the successful completion of this course, students will be able to:
NoLearning Outcomes
1 To acquire the basic concepts of object oriented programming
2 Gain the ability to solve a problem in Java with object-oriented programming
3 Understanding the Java programming language's reusability feature that prevents code repetition
4 Building complex software systems based on object-oriented approach
5 Gaining the habit of writing code as an element of the software development team

 
Weekly Detailed Course Contents
WeekTopicsStudy MaterialsMaterials
1 Introduction to OOP. OO-programming languages.
2 General review of the basic java courses seen in the Programming Fundamentals course
3 Class Concept, Creating a Method, Constructor Methods
4 Using this keyword in classes, Object generation applications from a class
5 Implementation of the encapsulation technique, use of the private keyword, Setter and Getter Methods
6 Inheritance in Classes, Super Class and Sub Class Concepts, Using Super Constructor in Classes
7 Review of the topics covered so far this week, sample applications and question-answer.
8 Midterm.
9 Using the protected keyword in classes, Polymorphism Logic in Classes
10 Abstract Classes, Variables and Methods, Using Interface in Classes, Static Variables, Constants and Methods
11 Overriding and Overloading, Creating Immutable Classes and Objects
12 Debugging, Differences Between Error and Exception, Use of Try-Catch-Finally Structure
13 File Class and Methods, Creating, Writing, Reading and Deleting Files
14 Sample applications on Interface Design with Java Swing.
15 Review of the topics covered so far this week, sample applications and question-answer.

 
Contribution of Learning Outcomes to Programme Outcomes
P1 P2 P3 P4 P5 P6 P7 P8 P9 P10
All 3 4 4 4 3 4 4 3 2 4
C1 4 5 4 3 2 3 4 3 2 3
C2 4 5 4 4 3 4 4 3 2 4
C3 3 4 5 4 3 4 3 2 2 4
C4 3 4 4 5 3 5 4 3 2 5
C5 3 4 4 5 5 4 3 3 3 5

  bbb

  
  https://obs.gedik.edu.tr/oibs/bologna/progCourseDetails.aspx?curCourse=237574&curProgID=44&lang=en