Show TOC

Developing AppsLocate this document in the navigation structure

This section contains the practical part, details and best practices that will help you while developing your apps, and what pitfalls you should look out for along the way.

When faced with developing an app, you have several options available. There are app templates, smart templates, or even a make-em-completely-from-scratch approach, but what's the difference, and which one is right for your situation? Truth is, in most cases, it's your level of expertise or need for flexibility and freedom that will decide.

App Templates

Think of the app templates described in this section as a kind of "best practice" for app development. They incorporate our latest recommendations and can be used for example as a starting point for developing apps according to the SAP Fiori Design Guidelines. They include generic application functionality and tests that can be easily extended with custom functionality if needed. As it stands, there are separate templates for Worklist and Master-Detail application patterns.

Building from Scratch

If you're skilled at coding and want the most freedom and flexibility possible, then you'll probably think it's best to build an app completely from scratch. The downside of this is that for every few good ways there are to do some thing, there are countless other ways that really are not the way to go, either because they'll cause headaches further down the line, or affect app performance, to name just two potential pitfalls. So in this section, we'll give you some guidance regarding the basic files you'll need in your app, and how to structure and name its various folders.

Regardless of whether you use app templates or build from scratch, there are some steps or concepts that are common to both. Throughout this section, we'll try to explain how to deal best with crucial concepts such as accessibility, security, device adaptation, and how you can speed up your app's performance for instance. Also be sure to check out things you really should avoid doing while coding. For more information, see Coding Issues to Avoid.

One last thing, although the API Reference within the Demo Kit is your one-stop shop for in-depth control documentation, you'll also find some important control-related information in the sections that follow. This should hopefully help you when faced with decisions such as "which table control should I use?" or "what kind of busy indication suits my use case best?". For more about this, see Control-Specific Information.

Smart Templates

On the other hand, there are also smart templates. These can be used to create SAP Fiori applications based on OData services and annotations without the need for any JavaScript UI coding. Apps based on smart templates use central, predefined template views and controllers, so no application-specific view instances are required and consistent UI designs are guaranteed across similar apps. For more information about using smart templates to build your apps, see Developing Apps with Smart Templates.