Skip to main content

Course Detail

Course Description

CourseCodeSemesterT+P (Hour)CreditECTS
OBJECT- ORIENTED PROGRAMMING-Fall Semester3+246
Course Program
Prerequisites Courses
Recommended Elective Courses
Language of CourseEnglish
Course LevelFirst Cycle (Bachelor's Degree)
Course TypeRequired
Course CoordinatorProf.Dr. Selim AKYOKUŞ
Name of Lecturer(s)Prof.Dr. Tansel ÖZYER
Assistant(s)
AimThe objective of this course is to teach object-oriented programming (OOP) in a problem-driven way that focuses on problem solving rather than syntax. Students learn object thinking and design, and improve their algorithmic thinking skills. They learn how and when to apply OOP techniques to a given problem effectively. The course starts with a review of fundamental techniques in Java, and then teaches objects and classes, object-oriented thinking, inheritance and polymorphism, exception handling and text I/O, abstract classes and interfaces, Java GUI basics, event-driven programming and animations, Java UI controls and multimedia, binary I/O, recursion, generics, lists, stacks, queues, and priority queues, sets and maps, implementing lists, stacks, queues, and priority queues.
Course ContentThis course contains; 1.Week: Introduction to object-oriented programming, Computer programs, Becoming familiar with Java programming environment, Algorith Design,2.Week: Fundamental Data Types, Variables, Arithmetic operators, Input and Output, Strings, Decisions, Boolean Variables and Operators, Comparing Numbers and Strings, Nested Branches,3.Week: Loops (for, do, while), Nested Loops, Random numbers, methods, Parameter passing, Return values, Methods without Return values, Variable scope, Recursive methods,4.Week: Arrays and Array Lists, Common Array Algorithms, Two-Dimensional Arrays,5.Week: Input/Output and Exception Handling, Reading and Writing Text Files, Command Line Arguments, Catching Exceptions,6.Week: Object and Classes, instance methods, Constructors, Object References, Static Variables and Methods,7. Week: Inheritance, Implementing Sub-classes, Overriding Methods, Polymorphism, Interface Types,8. Week: Graphical User Interfaces and Advanced GUI Topics,9. Week: Event-Driven Programming and Animations,10. Week: Recursion, Sorting and Searching (selection/merge/binary search),11. Week: Java Collections Framework: Lists, Stacks, Queues, and Priority Queues
Sets and Maps ,12. Week: Implementing Lists, Stacks, Queues, and Priority Queues,13. Week: Introduction to Web Development with Java and Java Enterprise (J2EE)
,14. Week: Review.
Dersin Öğrenme KazanımlarıTeaching MethodsAssessment Methods
1. He/she will be able to describe and discuss fundamentals of object-oriented programming and languages.17, 9A, E
2. He/she can use and apply fundamental concepts and constructs of object-oriented programming like class, object, polymorphism, inheritance, overriding. 17, 9A, E
3. He/she can use basic data types, basic control structures, loop types, functions and libraries in Java.17, 9A, E
4. He/she can use and apply classes, object-oriented thinking, inheritance and polymorphism, exception handling, abstract classes and interfaces in Java.17, 9A, E
5. He/she can design and develop object-orinted programs that use classes, inheritance, Java GUIs, event-driven programming and animations, Java UI controls and multimedia, binary I/O, recursion, generics, lists, stacks, queues, and priority queues, sets and maps, stacks, queues, and priority queues. 17, 9A, E
Teaching Methods:17: Experimental Technique, 9: Lecture Method
Assessment Methods:A: Traditional Written Exam, E: Homework

Course Outline

OrderSubjectsPreliminary Work
11.Week: Introduction to object-oriented programming, Computer programs, Becoming familiar with Java programming environment, Algorith DesignTextbook chapter 1
22.Week: Fundamental Data Types, Variables, Arithmetic operators, Input and Output, Strings, Decisions, Boolean Variables and Operators, Comparing Numbers and Strings, Nested BranchesTextbook chapter 2,3,4
33.Week: Loops (for, do, while), Nested Loops, Random numbers, methods, Parameter passing, Return values, Methods without Return values, Variable scope, Recursive methodsTextbook chapter 5,6
44.Week: Arrays and Array Lists, Common Array Algorithms, Two-Dimensional ArraysTextbook chapter 7,8
55.Week: Input/Output and Exception Handling, Reading and Writing Text Files, Command Line Arguments, Catching ExceptionsTextbook chapter 12
66.Week: Object and Classes, instance methods, Constructors, Object References, Static Variables and MethodsTextbook chapter 9,10
77. Week: Inheritance, Implementing Sub-classes, Overriding Methods, Polymorphism, Interface TypesTextbook chapter 11
88. Week: Graphical User Interfaces and Advanced GUI TopicsTextbook chapter 14
99. Week: Event-Driven Programming and AnimationsDers Kitabı Bölüm 15
1010. Week: Recursion, Sorting and Searching (selection/merge/binary search)Textbook chapter 18
1111. Week: Java Collections Framework: Lists, Stacks, Queues, and Priority Queues
Sets and Maps
Textbook chapter 10
1212. Week: Implementing Lists, Stacks, Queues, and Priority QueuesTextbook chapter 21
1313. Week: Introduction to Web Development with Java and Java Enterprise (J2EE)
Textbook chapter 32,33
1414. Week: Review
Resources
- Introduction to Java Programming and Data Structures, Comp. Version (11th Edition), Y. Daniel Liang, Peason, 2018. - Computer Science An Interdisciplinary Approach, Robert Sedgewick, Kevin Wayne, Peasoni 2018.
- Java Software Solutions, Global Edition, 9/e, Lewis & Loftus, Pearson, 2019. - Java: An Introduction to Problem Solving and Programming, Global Edition, 8/e, Savitch, Pearson, 2019. - Core Java Volume I and II --Fundamentals, 11/e, Horstmann, Pearson, 2019. - Java How to Program, Early Objects, Global Edition, 11/e, Deitel & Deitel, Peason, 2018. - Introduction to Programming Using Java, Eighth Edition Version 8.0, 2018 David J. Eck.

Course Contribution to Program Qualifications

Course Contribution to Program Qualifications
NoProgram QualificationContribution Level
12345
1
1. An ability to apply knowledge of mathematics, science, and engineering
X
2
2. An ability to identify, formulate, and solve engineering problems
X
3
3. An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
X
4
4. An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
X
5
5. An ability to design and conduct experiments, as well as to analyze and interpret data
X
6
6. An ability to function on multidisciplinary teams
X
7
7. An ability to communicate effectively
X
8
8. A recognition of the need for, and an ability to engage in life-long learning
X
9
9. An understanding of professional and ethical responsibility
X
10
10. A knowledge of contemporary issues
11
11. The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context

Assessment Methods

Contribution LevelAbsolute Evaluation
Rate of Midterm Exam to Success 30
Rate of Final Exam to Success 70
Total 100
ECTS / Workload Table
ActivitiesNumber ofDuration(Hour)Total Workload(Hour)
Course Hours14342
Guided Problem Solving14456
Resolution of Homework Problems and Submission as a Report000
Term Project15050
Presentation of Project / Seminar000
Quiz000
Midterm Exam12222
General Exam12222
Performance Task, Maintenance Plan000
Total Workload(Hour)192
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(192/30)6
ECTS of the course: 30 hours of work is counted as 1 ECTS credit.

Detail Informations of the Course

Course Description

CourseCodeSemesterT+P (Hour)CreditECTS
OBJECT- ORIENTED PROGRAMMING-Fall Semester3+246
Course Program
Prerequisites Courses
Recommended Elective Courses
Language of CourseEnglish
Course LevelFirst Cycle (Bachelor's Degree)
Course TypeRequired
Course CoordinatorProf.Dr. Selim AKYOKUŞ
Name of Lecturer(s)Prof.Dr. Tansel ÖZYER
Assistant(s)
AimThe objective of this course is to teach object-oriented programming (OOP) in a problem-driven way that focuses on problem solving rather than syntax. Students learn object thinking and design, and improve their algorithmic thinking skills. They learn how and when to apply OOP techniques to a given problem effectively. The course starts with a review of fundamental techniques in Java, and then teaches objects and classes, object-oriented thinking, inheritance and polymorphism, exception handling and text I/O, abstract classes and interfaces, Java GUI basics, event-driven programming and animations, Java UI controls and multimedia, binary I/O, recursion, generics, lists, stacks, queues, and priority queues, sets and maps, implementing lists, stacks, queues, and priority queues.
Course ContentThis course contains; 1.Week: Introduction to object-oriented programming, Computer programs, Becoming familiar with Java programming environment, Algorith Design,2.Week: Fundamental Data Types, Variables, Arithmetic operators, Input and Output, Strings, Decisions, Boolean Variables and Operators, Comparing Numbers and Strings, Nested Branches,3.Week: Loops (for, do, while), Nested Loops, Random numbers, methods, Parameter passing, Return values, Methods without Return values, Variable scope, Recursive methods,4.Week: Arrays and Array Lists, Common Array Algorithms, Two-Dimensional Arrays,5.Week: Input/Output and Exception Handling, Reading and Writing Text Files, Command Line Arguments, Catching Exceptions,6.Week: Object and Classes, instance methods, Constructors, Object References, Static Variables and Methods,7. Week: Inheritance, Implementing Sub-classes, Overriding Methods, Polymorphism, Interface Types,8. Week: Graphical User Interfaces and Advanced GUI Topics,9. Week: Event-Driven Programming and Animations,10. Week: Recursion, Sorting and Searching (selection/merge/binary search),11. Week: Java Collections Framework: Lists, Stacks, Queues, and Priority Queues
Sets and Maps ,12. Week: Implementing Lists, Stacks, Queues, and Priority Queues,13. Week: Introduction to Web Development with Java and Java Enterprise (J2EE)
,14. Week: Review.
Dersin Öğrenme KazanımlarıTeaching MethodsAssessment Methods
1. He/she will be able to describe and discuss fundamentals of object-oriented programming and languages.17, 9A, E
2. He/she can use and apply fundamental concepts and constructs of object-oriented programming like class, object, polymorphism, inheritance, overriding. 17, 9A, E
3. He/she can use basic data types, basic control structures, loop types, functions and libraries in Java.17, 9A, E
4. He/she can use and apply classes, object-oriented thinking, inheritance and polymorphism, exception handling, abstract classes and interfaces in Java.17, 9A, E
5. He/she can design and develop object-orinted programs that use classes, inheritance, Java GUIs, event-driven programming and animations, Java UI controls and multimedia, binary I/O, recursion, generics, lists, stacks, queues, and priority queues, sets and maps, stacks, queues, and priority queues. 17, 9A, E
Teaching Methods:17: Experimental Technique, 9: Lecture Method
Assessment Methods:A: Traditional Written Exam, E: Homework

Course Outline

OrderSubjectsPreliminary Work
11.Week: Introduction to object-oriented programming, Computer programs, Becoming familiar with Java programming environment, Algorith DesignTextbook chapter 1
22.Week: Fundamental Data Types, Variables, Arithmetic operators, Input and Output, Strings, Decisions, Boolean Variables and Operators, Comparing Numbers and Strings, Nested BranchesTextbook chapter 2,3,4
33.Week: Loops (for, do, while), Nested Loops, Random numbers, methods, Parameter passing, Return values, Methods without Return values, Variable scope, Recursive methodsTextbook chapter 5,6
44.Week: Arrays and Array Lists, Common Array Algorithms, Two-Dimensional ArraysTextbook chapter 7,8
55.Week: Input/Output and Exception Handling, Reading and Writing Text Files, Command Line Arguments, Catching ExceptionsTextbook chapter 12
66.Week: Object and Classes, instance methods, Constructors, Object References, Static Variables and MethodsTextbook chapter 9,10
77. Week: Inheritance, Implementing Sub-classes, Overriding Methods, Polymorphism, Interface TypesTextbook chapter 11
88. Week: Graphical User Interfaces and Advanced GUI TopicsTextbook chapter 14
99. Week: Event-Driven Programming and AnimationsDers Kitabı Bölüm 15
1010. Week: Recursion, Sorting and Searching (selection/merge/binary search)Textbook chapter 18
1111. Week: Java Collections Framework: Lists, Stacks, Queues, and Priority Queues
Sets and Maps
Textbook chapter 10
1212. Week: Implementing Lists, Stacks, Queues, and Priority QueuesTextbook chapter 21
1313. Week: Introduction to Web Development with Java and Java Enterprise (J2EE)
Textbook chapter 32,33
1414. Week: Review
Resources
- Introduction to Java Programming and Data Structures, Comp. Version (11th Edition), Y. Daniel Liang, Peason, 2018. - Computer Science An Interdisciplinary Approach, Robert Sedgewick, Kevin Wayne, Peasoni 2018.
- Java Software Solutions, Global Edition, 9/e, Lewis & Loftus, Pearson, 2019. - Java: An Introduction to Problem Solving and Programming, Global Edition, 8/e, Savitch, Pearson, 2019. - Core Java Volume I and II --Fundamentals, 11/e, Horstmann, Pearson, 2019. - Java How to Program, Early Objects, Global Edition, 11/e, Deitel & Deitel, Peason, 2018. - Introduction to Programming Using Java, Eighth Edition Version 8.0, 2018 David J. Eck.

Course Contribution to Program Qualifications

Course Contribution to Program Qualifications
NoProgram QualificationContribution Level
12345
1
1. An ability to apply knowledge of mathematics, science, and engineering
X
2
2. An ability to identify, formulate, and solve engineering problems
X
3
3. An ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
X
4
4. An ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
X
5
5. An ability to design and conduct experiments, as well as to analyze and interpret data
X
6
6. An ability to function on multidisciplinary teams
X
7
7. An ability to communicate effectively
X
8
8. A recognition of the need for, and an ability to engage in life-long learning
X
9
9. An understanding of professional and ethical responsibility
X
10
10. A knowledge of contemporary issues
11
11. The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context

Assessment Methods

Contribution LevelAbsolute Evaluation
Rate of Midterm Exam to Success 30
Rate of Final Exam to Success 70
Total 100

Numerical Data

Student Success

Ekleme Tarihi: 09/10/2023 - 10:50Son Güncelleme Tarihi: 09/10/2023 - 10:51