Term
what is black box reuse? What is it also called? |
|
Definition
the new functionality is obtained by aggregation. also called composition |
|
|
Term
what is white box reuse? What is it also called? |
|
Definition
the new functionality is obtained by inheritance. also called inheritance |
|
|
Term
what are two ways to discover inheritance? |
|
Definition
generalization and specialization |
|
|
Term
|
Definition
subclass is discovered first |
|
|
Term
|
Definition
super class is discovered first |
|
|
Term
what does generalization often lead to? |
|
Definition
|
|
Term
what's the difference between remodeling and refactoring? |
|
Definition
remodeling is done in modeling level and refactoring is done on source code level. |
|
|
Term
what does specialization often lead to? |
|
Definition
|
|
Term
what is implementation inheritance? |
|
Definition
extend by reusing functionality from super class |
|
|
Term
what is implementation inheritance also called? |
|
Definition
|
|
Term
what is specification inheritance also called? |
|
Definition
|
|
Term
what's the same thing between implementation and specification inheritance? |
|
Definition
interface of super class is completely inherited |
|
|
Term
what's the different thing between implementation and specification inheritance? |
|
Definition
specification inheritance does not inherit implementation of super class |
|
|
Term
|
Definition
have an obj and calling obj's operation sort of like calling composition's operation or abstract class as well |
|
|
Term
what are 2 things to do if delegate is used? |
|
Definition
1. delegates operation 2. don't let caller misuse delegate object |
|
|
Term
compare delegation and inheritance |
|
Definition
Delegation: flexibility, inefficiency inheritance: simple, language support, high coupling |
|
|
Term
what is an abstract method? |
|
Definition
a method that doesn't have implementation |
|
|
Term
|
Definition
a class which has at least 1 abstract method |
|
|
Term
what is rewritable method? |
|
Definition
allows a reimplementation |
|
|
Term
what is strict inheritance? |
|
Definition
|
|
Term
overwriting a method requires what action in UML class diagram? |
|
Definition
in super class there is methodA() and in sub class there is also methodA() |
|
|
Term
|
Definition
subclass re-implement method with blank |
|
|
Term
should contradiction be avoided? |
|
Definition
|
|
Term
|
Definition
partial application that can be specialized to produce custom applications |
|
|
Term
what types of framework are there? |
|
Definition
infrastructure framework, middle ware framework, enterprise application framework |
|
|
Term
what is goal of infrastructure framework? |
|
Definition
simplify software development process |
|
|
Term
what is middleware framework's goal? |
|
Definition
integrate existing applications |
|
|
Term
what is goal of enterprise application framework? |
|
Definition
|
|
Term
what is difference between components and frameworks? |
|
Definition
components: self-contained instances of classes framework: used to develop components |
|
|
Term
what is difference between class library and framework? |
|
Definition
library: smaller, classes doesn't work together
framework: classes cooperate to produce results |
|
|