Reusable software components
First Claim
1. A computer program product, tangibly embodied in a machine-readable storage device, comprising instructions operable to cause data processing apparatus to:
- define a component having an external interface and an internal interface for embedding external components into the component, each external component being a reusable software component encapsulating functionality, wherein multiple instances of each external component are usable at the same time,the external interface comprising;
an external programming interface for programmatic interaction with the component,an external data-binding interface for data communication with the component, andan external visual interface for access to a visual representation of a state of the component; and
the internal interface comprising;
an embedding interface for specifying one or more external interfaces of the external components to be embedded and a number of instances of each external component to be embedded;
an internal programming interface for programmatic interaction with the external components to be embedded,an internal data-binding interface for data communication with the external components to be embedded, andan internal visual interface for access to a visual representation of a state of the external components to be embedded.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus, including computer program products, implement techniques for structuring applications into reusable components. A reusable component having an external interface and an internal interface is implemented. The component encapsulates functionality, where multiple instances of the component are reusable at the same time. The component is configurable to embed one or more specified components. The external interface comprises an external programming interface, an external data-binding interface, and an external visual interface. The internal interface comprises an embedding interface, an internal programming interface, an internal data-binding interface, and an internal visual interface. The embedding interface specifies one or more component interfaces of components that can be embedded.
-
Citations
11 Claims
-
1. A computer program product, tangibly embodied in a machine-readable storage device, comprising instructions operable to cause data processing apparatus to:
-
define a component having an external interface and an internal interface for embedding external components into the component, each external component being a reusable software component encapsulating functionality, wherein multiple instances of each external component are usable at the same time, the external interface comprising; an external programming interface for programmatic interaction with the component, an external data-binding interface for data communication with the component, and an external visual interface for access to a visual representation of a state of the component; and the internal interface comprising; an embedding interface for specifying one or more external interfaces of the external components to be embedded and a number of instances of each external component to be embedded; an internal programming interface for programmatic interaction with the external components to be embedded, an internal data-binding interface for data communication with the external components to be embedded, and an internal visual interface for access to a visual representation of a state of the external components to be embedded. - View Dependent Claims (2, 3, 4)
-
-
5. A computer program product, tangibly embodied in a machine-readable storage device, comprising instructions operable to cause data processing apparatus to:
-
receive user input identifying a first component having an internal interface for embedding external components, wherein the internal interface comprises an internal programming interface, an internal data-binding interface, an internal visual interface, and an embedding interface embedding interface for specifying one or more external interfaces of the embeddable external components; receive user input identifying a second component, embeddable by the first component, the second component having an external interface among the one or more external interfaces specified by the embedding interface of the first component, wherein the external interface comprises an external programming interface, an external data-binding interface, and an external visual interface; receive user input embedding the second component within the first component, wherein the user input embedding the second component comprises configuration data for the embedding interface, the internal programming interface, the internal data-binding interface, and the internal visual interface, of the first component, wherein the configuration data for the internal programming interface, the internal data-binding interface, and the internal visual interface specifies connections with the external programming interface, the external data-binding interface, and the external visual interface, respectively; and connect the internal interface of the first component to the external interface of the second component. - View Dependent Claims (6, 7)
-
-
8. A computer implemented method, comprising:
-
receiving user input identifying a first component having an internal interface for embedding external components, wherein the internal interface comprises an internal programming interface, an internal data-binding interface, an internal visual interface, and an embedding interface for specifying one or more external interfaces of the embeddable external components; receiving user input identifying a second component, embeddable by the first component, the second component having an external interface among the one or more external interfaces specified by the embedding interface of the first component, wherein the external interface comprises an external programming interface, an external data-binding interface, and an external visual interface; receiving user input embedding the second component within the first component, generating configuration data for the first component in response to the received user input embedding the second component, wherein the configuration data includes configuration data for the embedding interface, the internal programming interface, the internal data-binding interface, and the internal visual interface, wherein the configuration data for the internal programming interface, the internal data-binding interface, and the internal visual interface specifies connections with the external programming interface, the external data-binding interface, and the external visual interface, respectively; and connecting the internal interface of the first component to the external interface of the second component. - View Dependent Claims (9, 10)
-
-
11. A machine-readable storage device, comprising:
-
means for receiving user input identifying a first component having an internal interface for embedding external components, wherein the internal interface comprises an internal programming interface, an internal data-binding interface, an internal visual interface, and an embedding interface for specifying one or more external interfaces of the embeddable external components; means for receiving user input identifying a second component embeddable by the first component, the second component having an external interface among the one or more external interfaces specified by the embedding interface of the first component, wherein the external interface comprises an external programming interface, an external data-binding interface, and an external visual interface; means for receiving user input embedding the second component within the first component; means for generating configuration data for the first component in response to the received user input embedding the second component, wherein the configuration data includes configuration data for the embedding interface, the internal programming interface, the internal data-binding interface, and the internal visual interface, wherein the configuration data for the internal programming interface, the internal data-binding interface, and the internal visual interface specifies connections with the external programming interface, the external data-binding interface, and the external visual interface, respectively; and means for connecting the internal interface of the first component to the external interface of the second component.
-
Specification