This repository contains materials for the Karazin National University Java OOP course.
To check specific homework, navigate to a branch feature/homework-n
where n
is the homework number.
Homework no. | Content |
---|---|
Homework 1 | Basic Java service structure, writing unit tests via junit.jupiter . |
Homework 2 | Polymorphism, inheritance. Writing a basic Warrior class with a child Knight . Writing a Game class in which we can make two Warrior s fight |
Homework 3 | Factory pattern, interfaces, abstract classes. Creating the IUnit interface and UnitAbstract abstract class. Creating the UnitClass factory. Creating an Army class that can store multiple IUnit . |
Homework 4 | Iterator pattern, parameterized tests. Implementing the fight method between two Army instances. |
Homework 5 | Setting up a logger. Polymorphism-based solution to Defender class. |
Homework 6 | Delegators code generation. Decorator. Splitting logic into interfaces. Mix-in. Implementing IUnitInArmy interface. Adding two units: Vampire and Lancer . |
Homework 7 | Chain of responsibilities and Command patterns. Overview of a Visitor pattern. Implementing a Healer class. |
Homework 8 | Adapter and Composite patterns. Implementing a "Straight Fight" feature by adding straightFight method to the Game class. |