Skip to main content

RamBase Guidelines

Applications and components

The applications and components represent the primary building blocks of the RamBase user experience.

Application

RamBase application consists of one or more components. An application without any components will just be an empty shell, and can not be used for anything meaningful.

An application is a container for one or more components. There is no coding necessary to create the application container.

Note

You can define a suitable layout for your application by opening your application container in RamBase App Editor. RamBase App Editor comes with a tool box which will help you to create and manage simple to complex application layouts. You can use the editor to divide the application into sections and then add components to these sections.

Components

A component is a part of an application and all UI and custom logic will be written as components. You can reuse a component in several different applications. A developer has to create a component, while any person with some knowledge to use a design tool can create applications.

Note

An advantage of generating the application with several components is to make it more flexible if a customer later wants to switch out parts of an application. Different versions of components can be loaded for different customers which in turn will result in the application to look very different depending on who is accessing it.

When you start designing a new application you should think of how that application can be split up into components. As stated before it is possible to create the whole application as just one big component, but then you don't have any flexibility if you want to switch out parts of the screen. So before deciding how many components you want your application to consist of, you should think of what parts of an application that natural belongs together, and what parts of an application that could be candidates for customization.

This will normally be a good indication of what should be separate components. Seen from a customization perspective it could be tempting to say that every field in an application could be it's own component - that would make the application super flexible, but seen from a developers perspective this application would be a nightmare to develop and maintain.

Tip

It can be hard to find the correct balance between flexibility and ease of development, but in general it is better to divide an application into too few components instead of too many.

The illustration below shows how a set of 10 components is added to a sales order application:

ApplicationModel.png