Course Objectives: |
The aim of this course is to provide students with the concept of Object Oriented Design (NYT). Also, it is aimed to give Integrated Modeling Language (TMD) and Object Oriented Programming (NYP) concepts, event-driven programming concept, class, object and message transmission concepts. In addition, students are aimed to develop the ability to apply Object Oriented Programming techniques in the Java programming language. |
Course Content: |
Object-oriented thinking, abstraction, object-oriented analysis and design concepts and design patterns, integrated modeling language (TMD): introduction, role of modeling, models and views, basic diagrams, basic elements, sorting, class and package diagrams, development life cycle . |
Week |
Subject |
Related Preparation |
1) |
Object Oriented Thinking
|
Read Topic 1 |
2) |
History of Object Oriented Programming overview |
Read Topic 2 |
3) |
Object Oriented Design |
Read Topic 3 |
4) |
Integrated Modeling Language (Introduction, Elements and TMD Diagrams) |
Course notes |
5) |
Understanding the paradigm: What is a paradigm? (Programming Structures, Access Factors, Life Cycle Factors) |
Read Topic 4 |
6) |
Understanding the paradigm: An application (Ball Words) (Data fields, Structuring Function, Inheritance, Java Graphics components) |
Read Topic 5 |
7) |
Understanding the paradigm: An Application (A Cannon Game) (Listeners, Internal Classes, Interfaces, Java Event Model, Window View) |
Read Topic 6 |
8) |
Midterm |
None |
9) |
Understanding the Paradigm: An Application (Pinball Game) (Collections, Mouse Listeners, Threads, Concurrency Programming) |
Read Topic 7 |
10) |
Understanding the paradigm: An Application (Pinball Game) (Collections, Mouse Listeners, Threads, Concurrency Programming) |
Read Topic 7 |
11) |
Understanding Heredity |
Read Topic 8 |
12) |
Inheritance: case study (Solitaire) |
Read Topic 9 |
13) |
Software Component Reuse mechanisms |
Read Topic 10 |
14) |
Consequences of using heredity |
Read Topic 11 |
15) |
Final Exam |
None |