Object-Oriented Design
TeachersMIZUTANI, Kozo
Grade, SemesterYear 1 full year [Division of Informatics Science〈Correspondence Course〉(Master's Degree Program)]
CategorySpecial Subjects
Classesメディア授業
Elective, CreditsElective 2credit
 Syllabus Number

Course Description

In this course, we learn design patterns for software development by object oriented programming. Not only object oriented programming, but also software development requires design and implementation that achieve re-usability, maintainability, and portability at high level. Applying software design patterns is one of a method to satisfy these requirements. To apply effectively for software development, we need to understand design patterns. The purpose of this course is to understanding GoF design patterns through implementing simple java programs. And also, we aim to become able to choose design patterns adequately, design and implement software for system requirements.

Course Objectives

Learners will be able to:
- explain what is software design patterns, understand characteristic of each pattern.
- understand the role and behavior of classes on each design pattern.
- apply design patterns adequately to develop programs.

Grading Policy

This course evaluates at a ratio: reports (2 Times) are 50% and an examination is 50%.

Textbook and Reference

KindTitleAuthorPublisher
TextbookJava言語で学ぶデザインパターン入門
結城浩SB Creative, ISBN-10:4797316462
References

Requirements(Assignments)

Learners have to learn using prescribed textbooks, and work on questions at the end of each chapter in the textbook for understanding deeply. Although the textbook uses Java, you can use other object oriented programming language. (However, an examination consists questions by Java.)

Note

It is needed knowledge of the basis of object oriented programming.

Schedule

1Reviewing Object Oriented Programming (Java Programming, UML)
2Iterator and Adapter Pattern
3Template Method and Factory Method Pattern
4Singleton and Prototype Pattern
5Builder and Abstract Factory Pattern
6Bridge and Strategy Pattern
7Composite and Decorator Pattern
8Visitor and Chain of Responsibility Pattern
9Facade and Mediator Pattern
10Observer and Memento Pattern
11State Pattern
12Flyweight and Proxy Pattern
13Command Pattern
14Interpreter Pattern
15Integrated Study