Ok, so here are some generic statements from the
SCEA 5 study guide... which I think apply to both Abstract Factory and Factory.
(1) Eliminates the need to bind application classes to your code. Code deals only with the interface.
- is one of the benefits of Factory but I think it's also applicable to Abstract Factory - True or False?
(2) Provides an abstract class that determines the appropriate concrete class to instantiate to create a set of concrete products that implement a standard interface.
- is Abstract Factory but I think it's also a description for Factory - True or False?
(3) A class wants its subclasses to specify the objects it creates.
- is one of the usages for Factory but I think it's also applicable to Abstract Factory - True or False?
(4) A class cannot anticipate the class of objects it must create.
- is also one of the usages for Factory but I think it's also applicable to Abstract Factory - True or False?
(5) Enables the subclasses to provide an extended version of an object.. because creating an object in a class is more flexible than creating directly in the client.
- is one of the benefits of Factory but I think it's also applicable to Abstract Factory - True or False?
(6) Classes delegate responsibility to one of several helper subclasses and you want to localize the knowledge of which helper subclass is the delegate.
- is one of the usages for Factory but I think it's also applicable to Abstract Factory - True or False?
(7) The system should be independent of how its products are created, composed and represented.
- is one of the usages for Abstract Factory, but I think it's also applicable to Factory - True or False?
What do you guys think?