Patent ID: 8745573

Claim:
A method of providing an application development framework for platform independent development of an application, comprising: providing an Application Programming Interface (API) of the application development framework to program an application, the application comprising programming code to be executed on one or more platforms, wherein the API is independent of the one or more platforms; providing an application environment of the application development framework to provide an infrastructure to program the application, wherein the infrastructure is independent of the one or more platforms; and providing one or more interfaces of the application development framework between the application environment and the one or more platforms, a respective interface comprising a plug-in interface configured to provide platform-specific functionality for the application, wherein the plug-in interface is configured to use plug-in software modules configured to provide platform-specific capabilities, wherein the plug-in interface is configured to transform one or more abstract functionalities included in the application, and which are independent of a specific platform, to one or more corresponding platform-specific functionalities, and wherein the plug-in interface includes modules having common functionalities implemented by an abstraction layer of the application development framework and platform-specific functionalities implemented by the plug-in software modules, if available, or emulation, if there is no corresponding plug-in software module; wherein the application, with the one or more platform-specific functionalities transformed by the plug-in interface, is configured for compilation to platform-specific executable binary code configured for execution by a specific platform.