Best Practices for Developing Applications > Building ThingWorx Applications Using Reusable Components
Building ThingWorx Applications Using Reusable Components
This section provides a brief overview on how to develop applications using components that can be reused throughout your applications. It also provides best practices for configuring and customizing these reusable components, as well as creating your own reusable components.
When you build your applications, it is efficient to reuse standard components throughout your applications. These reusable components become the building blocks of your application, and you can configure and customize these components to suit your business case.
Reusable components provide the following benefits:
Ensure consistent design practices thought your application suite.
Allows efficiency and flexibility when creating new or modifying existing applications to address your evolving business needs.
Provide a better handling of the source data, as the components contain prebuilt business logic.
Save on the design and development time.
Ensure the use of best practices when building applications.
Many ThingWorx entities such as widgets with business logic, services, data adapters can be reused in different applications.
Terms Used in Reusable Components
The following terms are used for reusable components:
Term
Definition
Component
A container that contains a set of standard ThingWorx entities.
Atomic component
The smallest component that cannot be divided during the design time.
Composite component
A component that comprises of atomic and other composite components.
Configurable
The behavior of a component can be changed by configuring the exposed parameters.
Customizable
The out-of-the-box capability of a component can be changed by updating the internal code and entities.
Extendable
Add additional capabilities to the component by updating the properties and functionality.
Upgradable
The component supports in-place and migration upgrades.
Runtime
The execution time of the application on the ThingWorx server.
Design time
The time required to develop the application using the ThingWorx Composer and Mashup Builder.
Domain
A business unit that contains some components.
Module
A group of components under the same domain.
Types of Reusable Components
The reusable components are categorized as:
Was this helpful?