Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
Showing results for 
Search instead for 
Did you mean: 
Product and Topic Expert
Product and Topic Expert
I’m sure you’ve heard or read about the new application programming model for SAP Cloud Platform. And probably already know a little more about Core Data & Services (CDS) and what it has to offer. But do you fully understand how much quicker, easier and more effective it can be to develop an application on SAP Cloud Platform using the new programming model? If not, this quick overview is for you.

1 - It lets you focus on what’s important

The application programming model provides generic, out-of-the-box features that automate time-consuming tasks. For example, admin data and Universally Unique Identifiers (UUID) are automatically completed in your model, there is no need to input the information manually. By providing these features out-of-the-box, we save you the time and trouble. That means you can focus on what is important: your business logic! The business logic you incorporate into your application, the specific features you add, are what set your app apart. The application programming model aims to make your development experience easier, so that you can devote more time and resources to adding value.

The following example shows some of these generic features in action:

Without these generic features, your code would look something like this:


2 - It allows you to write less boilerplate code

The application programming model provides effective language bindings for Java and JavaScript. For example, for Java, write optional methods with meaningful annotations (@BeforeCreate, @BeforeUpdate, etc.) to interact with our generic service provider. Typed access to model entities makes your code simple, compact, and easily readable. You no longer need to write and read through many lines of code.

This also has a positive impact on the review process, your app’s performance and the required maintenance. Less code equals:

  • Less time needed for code review

  • Fewer resources used in the packaged application

  • Fewer bugs

Which mean you can spend your time working on code fixes or adding new features. You know which ones I mean. The ones that you would have put off for lack of time… not anymore!

3 - It has reuse principles baked in

Why should you spend time and resources rewriting what already exists? The answer is: you shouldn’t! Our modular approach lets you divide your app into reusable modules that you can flexibly combine depending on what you need. The guiding principle is “reuse instead of re-invent”.

Have a look at the post “ITelO – A Sample Business Application for the new Application Programming Model for SAP Cloud Platfo...” by Oliver Welzel to learn more about reusing existing data models in your application.

4 - It lets you concentrate on the WHAT, not the HOW

We have all heard the benefits of functional programming models and I think this one is pretty straightforward: You focus on WHAT you want, that is your actual intent, and not HOW it should be implemented. The application programming model for SAP Cloud Platform lets you do just that because it handles the HOW. It’s responsible for finding the most effective way to implement your needs.

If you want to dig a little deeper, check out the post “Monday morning thoughts: what not how” by DJ Adams.

5 - It’s open and flexible

We have designed our programming model based on openness, integration and interoperability. What does it mean for you? We promote your right to choose. It’s true that we provide advanced support for a recommended set of technologies, but that does not mean that you are obligated to use them. You can use your preferred development environment or work with the technology you’re most comfortable with. This also means you can share information and knowledge to create richer models that can be reused and extended depending on the business need.


For more information about the application programming model, check out