Correct Detailed Answers Guaranteed Pass!!
1. Types of design patterns and Creational: Abstracts the object instantiationProcess
explain each
Structural: Abstracts how classes and objects are composed to
build larger structures
Behavioural: Abstracts algorithms and assignment of responsi-
bility among objects
2. Explain Observer Name: Observer (aka: Publish-Subscribe)
Problem description: Use when multiple presentations of an
object's state are needed
Solution description: Separates presentation of object state
from the object itself
3. Name 3 structural patterns Adapter, composite, decorator
4. Explain Adapter Name:
Adapter (aka: Wrapper)
Problem description:
Use when a class' interface doesn't match
with the hierarchy that we want to use
Solution description:
Inject a class to adapt the interface to the
expectation
5. Explain overriding Allows subclasses to redefine
methods that superclasses have
already defined or declared
, SOEN341 Final Actual Exam Questions With Reviewed 100%
Correct Detailed Answers Guaranteed Pass!!
6. Explain interfaces Defines the methods that a class will
respond to
Can be declared in a .java file
7. Explain abstract class Can declare methods without
providing an implementation
Can define methods as well
Cannot be instantiated directly
8. Name creational patterns Abstract factory, Factory method
9. Explain factory method Name:
Factory Method (aka: Virtual Constructor)
Problem description:
Use when a class cannot anticipate the
objects it must create
Solution description:
Defers the responsibility of creating objects
to subclasses that know what to create
10. Explain abstract factory Name:
Abstract Factory (aka: Kit)
Problem description:
Use when your system must be configured
with one of multiple families of objects
Solution description:
, SOEN341 Final Actual Exam Questions With Reviewed 100%
Correct Detailed Answers Guaranteed Pass!!
Creates abstractions that hide the
configuration details of the object families
11. Explain composite Name:
Composite
Problem description:
Use to allow clients to treat individual
objects and collections of them identically
Solution description:
Use an abstraction to hide the fact that an
object is an aggregate of several objects
Example: arithmetic tree
12. Explain decorator Name:
Decorator
Problem description:
Add additional responsibility to an object
dynamically. An alternative to subclassing.
Solution description:
Use an abstraction to inject added
behaviour dynamically
13. Name 2 types of behavioural Strategy, template method
patterns
14. Explain Strategy Name:
Strategy (aka: Policy)
Problem description:
, SOEN341 Final Actual Exam Questions With Reviewed 100%
Correct Detailed Answers Guaranteed Pass!!
Use to make the method by which a task is
accomplished easily replaceable
Solution description:
New approaches to accomplishing a task
are produced by extending an abstraction
Example:
transportationStrategy by car, bus or plane
15. Explain template method Problem description:
Use to share common parts of an
implementation while allowing subclasses
to refine other parts
Solution description:
Common parts are defined in the
superclass, which makes calls to abstract
methods that deliver the other parts
16. Cohesion vs coupling Cohesion:
- Degree to which a module relies on
other members within the module to
deliver its functionality
- Cohesion is an indication of the relative functional strength of
a module.
- A cohesive module performs a single task, requiring little
interaction with other components in other parts of a program.
Stated simply, a cohesive module should (ideally) do just one
thing.
Coupling:
- Degree to which a module relies on