Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Say you have a Player class with a pair of subclasses: Warrior and Mage. You want to extend this class hierarchy to incorporate levels, so
Say you have a Player class with a pair of subclasses: Warrior and Mage. You want to extend this class
hierarchy to incorporate levels, so you plan to create Beginner, Intermediate and Pro subclasses. However,
since you already have two subclasses, you'll need to create six class combinations such as Beginner Warrior,
ProMage and so on
Adding new Player types and levels to the hicrarchy will grow it exponentially. For example, to add a
Knight player you'd need to introduce three subclasses, one for each level. And after that, adding a new
level would require creating more subclasses, one for each player type. The further we go the worse it
becomes.
Using OO design principles and design patterns we learnt so far, solve the problem of class explosion.
Specifically, complete the answers to following questions:
mark Which OO design principle that needs to be applied to solve the problem. Hint: Select
among Inhertiance, Polymorphism, Composition, Overriding, Overloading
mark Identify the most relevant design pattern that can be used to solve the problem.
marks Draw the class diagram that may be used as a design of your solution. For each class
provide class name, and any relevant propertics and methods that may be necessary to solve the
problem. Clearly identify relationships between them, and if neccessary, provide multiplicities of the
identified relationships if applicable.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started