Components are one of the most important aspects of modern visual programming platforms, which enable reusability of code and repositories of component libraries. As a result, you can build high-quality app components and share them with others, boosting application development time and avoiding code fragmentation.

When Objectifying Is a Good Thing

A component is a reusable object that speeds up application creation and delivery. It can be either an application or a module that provides additional features. It should be easy to use and understand, and the focus should be main or common use cases.

After you create a component, it can modularize your code (think "don't repeat yourself" - DRY). You can reuse it in your application or as an infrastructure piece for your factory for more than one application. You can publish it to the Forge, where it can serve multiple apps and developers.

How to Succeed at Component Creation 

Now that you're sold on building a component, it's time to think about how to do it. The successful creation of a component encompasses:

  • Deciding its purpose.
  • Designing an API and logic that support the main scenarios.
  • Defining the presentation by giving it the right names and icons, for example.
  • Following a set of best practices that enhance the experience of reuse and maintenance.
  • Making sure you cover non-functional requirements such as performance, scalability and security
  • As you start work, it's easy to get caught up on specific aspects of the build. As a result, you might have trouble remembering all the best practices. So, to make creating a component easier for you, we created this handy development checklist that guides you through the process and helps you ensure you don’t forget something important!

    You can read the extended version in the Complete Guide to Creating Components.

    If you know any other developers who want to build components successfully, feel free to download the checklist and share it with them. Or, even better, encourage them to get their own copy.