This course introduced OOP and Java programming. According to the course website, this course aims to provide extensive practice in problem solving using the object-oriented programming paradigm. Students will learn the key concepts and distinctive features in object-oriented programming. They will develop skills to abstract data and entities from the problem domain, build object models, design solutions using object-oriented principles and strategies, and implement solutions in object-oriented programs. Students will also explore tools and best practices in object-oriented programming.
This assignment is a team management application takes txt
format input. The functionality (and design pattern used) includes:
- company class: singleton
- initialize employee as different roles: state pattern
- employees can take leave
- set up teams, add / delete member and active head
- undo and redo operation: command pattern