Show TOC

PerformanceLocate this document in the navigation structure

The following measures help you improve performance when loading data or modules.

Module Loading

The app uses an asynchronous bootstrap and all files use the sap.ui.define and sap.ui.require syntax. This allows for asynchronous loading of modules and dependencies and greatly increases the application performance. For more details, see sap.ui.define and sap.ui.require in the sap.ui API Reference section of the Demo Kit.

Loading Data with Growing List

The list is set to growing mode so that only the first few items are displayed for performance reasons. Using the scrollToLoad feature, the user can display more items by scrolling down or pressing the trigger at the end of the list.

Loading Data Depending on Navigation

The way in which app data is loaded varies depending on whether or not the URL used in the navigation references an object, as outlined below.

URL References an Object

In this scenario, two requests are sent out simultaneously for a) the master list for a set of items and b) the detail page for the item that is referenced in the URL. This behavior is intended and optimizes the performance for most cases.

URL Does Not Reference an Object

In this scenario, a first request is sent out to load the master list items. A second request will be sent out automatically if additional properties and related entities are bound (examples: line items when creating a template using the wizard, or any additional property for resolving the detail page binding, either by 1) expanding to a related entity or 2) properties in the same collection used in the master-list that have been excluded by using a select on the master-list items binding but are used on the detail screen). Here, the URL will be referencing the selected items and a reload will run into the “URL references an object” scenario.

Note
  • The implementation that sends two requests simultaneously is chosen intentionally: it is very unlikely that the requested entity based on the hash lies within the first 20 items requested by the list in the Master view (growing threshold is the list default). This means that the overall startup time is faster in most cases, even though two requests are sent.

  • When a URL does not reference an object, the application updates the URL to reference the first object in the list, which makes the implementation where the URL references an object the standard case.