Week 8 Flashcards
What are software components?
Software components are independent units within a system that encapsulates a collection of data and functions that are semantically related.
They are a higher-level abstraction than objects and encapsulates (hides) their internal structure.
What is the notation of components?
For components, we always need to include the plug thingy and also write «component»
How does a component collaborate with other components?
A component collaborates with other components via well-defined interfaces.
Provider (ball), Require (hand)
What can a Software Component be?
A software component can be a collection of classes (packages), a Web Service, a resource (hardware or software)
What do we design components to be?
We design components to be
modular, portable, replaceable and reusable
What are the advantages of components?
They make discussions easier at a higher level. Especially with the clients.
Its like a higher level class diagram, that makes discussion easier as it tries to hide a lot of the detail.
EMPHASIS IS JUST ON HIGHER LEVEL, MAKING THINGS EASIER TO UNDERSTAND
We ________ our classes into components
Encapsulate
What is a nested component?
A nested component is a bigger component that is a composition of several other components. These different sub components might be doing something specific for the bigger component.
Reminder to go through component diagram exercise on lecture notes
it is very impt…
test
test