We live in a time where our lives revolve around a smartphone. No wonder, most vendors–– both public and private––focus their services on mobile apps rather than the web. And a major trend that is catching up in the mobile application market is hybrid application development. Oracle has raised the stakes with Oracle Mobile Application Framework (MAF), a hybrid mobile architecture. Oracle’s entry into mobility was through its branded framework once known as Oracle Application Development Framework (ADF). Oracle ADF is an enterprise application builder that uses the Java framework and assists rapid application development. Oracle ADF for mobile was later rebranded as Mobile Application Framework (MAF), marking Oracle’s new approach in mobility. MAF, being a hybrid mobile development framework, enables application development from a single source to generate native mobile applications in all available platforms.

Why Oracle MAF?

MAF enables coding of the controller and the model (in MVC paradigm) in mobile applications using Java. It also supports coding in HTML5 and JavaScript for a rich user experience. Java extensively accelerates the performance of the application since the lightweight Java Virtual Machine (JVM) is bound as a native library to the operating system. JVM loads and executes the Java code written in the business and data access layers, and passes the data to HTML5 views. The Oracle Mobile Cloud Service (MCS) provides a mobile application development platform as well as cloud-based services. Through MAF, integration to the cloud is easy and secure. [caption id="attachment_16544" align="alignnone" width="934"]Oracle MAF Architecture Oracle MAF Architecture[/caption] Oracle MAF has the following advantages:
  • MAF deploys a single source application in iOS, Android, and Windows.
  • The focus is on rapid application development in complete MVC paradigm.
  • MAF leverages HTML, Javascript, and powerful Java technologies.
  • There is built-in security, device-service integration, Altova skin for a rich user experience, and faster development tools.
  • Good code reusability enables faster development and higher performance in comparison to competitors like Adobe’s PhoneGap.

Supported IDEs

For quick application development, Oracle MAF has adopted a visual and declarative implementation approach. JDeveloper and Eclipse are the prime Integrated Development Environment (IDE) choices for harnessing the development capabilities of MAF. This not only enhances developers productivity but also the application’s scalability. For the Eclipse version, however, you need the Oracle Enterprise Pack plugin to tap the complete features of MAF. The plugin has the following extra features:
  • Integration with platform SDKs
  • Direct deployment to mobile devices and emulators
  • Interactive XML page layout for design
  • Task flow editor to define the control flow between visual pages
  • Component Palette, a collection of interactive User Interface (UI) elements and controls for visual page
  • Data Control Palette for remote connectivity and service access
  • Formatter and Property Inspector for smart code editing  
[caption id="attachment_16548" align="alignnone" width="2556"]Visual and Declarative Mobile Application Development in JDeveloper Visual and Declarative Mobile Application Development in JDeveloper[/caption]

Oracle MAF UI: Highlights

  • There are more than 80 UI components to build responsive mobile application interfaces in a declarative way.
  • The Component Palette includes layout components, input and selection components, and data display components.
  • The UI offers rich data visualization objects such as charts, maps, timelines, gauges, and more.
  • It supports the implementation of custom UI components by extending available components, thus encouraging code reusability.
  • It supports different views without changing the business logic (service or data access implementation) when loaded into a tablet or a phone.
  • Since the UI is designed for mobile devices, it supports events like touch and swipe gestures.
  • The form factor component enables adaptive application display depending on the user device.
  • The Webview component enables web pages to adapt to different platforms without any code modification.
[caption id="attachment_16551" align="alignnone" width="2346"]Oracle MAF application on iOS, Android, and Windows platforms Oracle MAF application on iOS, Android, and Windows platforms[/caption]

Security

Security is a serious concern in mobile application development. MAF comes with the following built-in security features that ensure encryption of sensitive data:
  • There is support for tunneling, security policies, access control, and a single sign-on.
  • Local SQLite DB in the framework is encrypted.
  • Remote communication is secured with HTTPS (encrypted using SSL/TLS).
  • MAF provides on-device encryption for the application data (keystore is used to store credentials and this supports offline validation).

The Oracle MAF Effect

Oracle MAF, with its immense potential for rapid application development in all major platforms, has captured the mobile application development market within a few years of its entry. With its promising efficiency and performance, it helps even inexperienced developers to step in and excel in mobile app development. By leveraging the power of Java, JavaScript, and HTML and by providing a highly visual and declarative development environment, it promises to push mobile application development to the next level.