Web Dynpro: Reusability
(Fifth article of the series: Web Dynpro) Developing a web-application using HTML and Java script requires the developer to be careful, client-conscious and device-conscious.
SAP introduced BSP technology (Business Server Pages) before Web Dynpro and it offered the flexibility to write the html and java script code alongside ABAP code and design the user-interface look and feel the way developer desired. Many developers were happy as they had more control over things and could be more creative.But this came at a cost. There were disadvantages with that way of doing things. The look and feel of the different applications was not consistent and varied across the enterprise. Different developers adopted different ways and even same developer followed different approaches at different times. There were no standard ways of offering repetitive functions to users like field value helps, personalization, etc. Also, the reusability of code implementing repetitive tasks was very poor.
People at SAP had these things in their minds and these factors went into the design of Web Dynpro framework. They avoided all these drawbacks by offering standard components for most of the repetitive tasks and offered developers the way to create their own reusable programming blocks - components. The web dynpro application is actually one or more components based on the foundation feature - Componentization.
The web dynpro components are reusable units which can be embedded into other components to give rise to complex applications. The developer is saved time as he does not need to redevelop the same functionality over and over again and he can reuse the available components.
The standardization and reusability result in a uniform and consistent look and feel of the business application across the enterprise be it a Finance application or Sales or HR application. They have the same way of doing things like providing field value help or personalization features.
Knowledge of basic ABAP is sufficient in most of the cases, so need of a skill-set requiring combination of SAP ABAP and web-development is avoided. The reusability helps the developer to be more productive and establishes a standard way of doing things.