Software entity. An object may belong to different interfaces
- An object providing Input/Output ports defined by interfaces
- A component can be handled only by passing information through its ports
- The information expected from a port must comply with the port interface
- A component can be itself an output port (e.g. the type of the instance of a class is the class).
A port of a component is a place where information is specified that allows to connect or use a component from external world.
N.B.: The notion of port has been introduced to limit the usage of objects to their declared interface and not to their implementation. Thus, a component is a black box object.
Name and specified information expected from a port. Assumption: the name of information is specific to it specification
Note: here, methods are not defined from a given component but refer to an ontology
Software component that implements an application functionality. Several components can provide this functionality.
Component that get an object T to follow an interface I.
Map a T-interface to an I-interface and might name this relation. Example of register based on dict : key: (T, I) -> object "adapt_T_I"
Service transforming a T object (object that follow T interface) into an object following I interface. (Also: supply a T object adapted to I interface) "adapt" uses register to find corresponding adapter.
Note: "Adhere to interface" or "Follow interface" ?