Advantages of Using VoltMXReference Architecture
- Ease of use: App developers have a shorter learning curve while using Volt MX Reference Architecture. This is because each developer needs to understand only the corresponding MVC component that he/she is developing. So, UI designers need to learn about only the View, the back-end developers have to know only about the Model, and the developers who create the app's business logic need to understand the Controller.
- Get started easily: Volt MX Reference Architecture provides code generation tools that help you to quickly get started with your app-development process. These tools automatically create Volt MX Reference Architecture classes that your app needs to access its services. You do not have to create these classes, so you can proceed directly to writing the business logic of your app.
- Automatic generation of app components: Volt MX Iris automatically generates most of the components of an app that is created under Volt MX Reference Architecture. The auto-generated objects provide straightforward and easily understandable interfaces. This results in the abstraction of most of the complexity of the app from both developers and customers.
Seamless integration with Volt MX Foundry: If your app requires the use of back-end data services, Volt MX Reference Architecture provides a hassle-free integration with Volt MX Foundry. Your Volt MX Reference Architecture app can connect to the back-end data services available in Volt MX Foundry, with very little effort on your part.
Parallel app development: As Volt MX Reference Architecture segregates all the elements of an app into three major units, it enables the development of both the front end and back end of the app in parallel. For instance, front-end developers do not have to wait until the back-end services of the app are implemented before they can develop the app. They can use mock objects services that simulate the app's back-end functionality while they develop the front end of the app. Likewise, back-end developers can start development without needing any type of integration efforts with the app, until both the UI elements and the back-end services are in a stable state of development.
- Faster app development: The parallel app development feature of Volt MX Reference Architecture logically leads to the reduction in the time and effort required to develop an app. In addition, the use of Volt MX Reference Architecture speeds up your app development by avoiding to perform repetitive tasks such as writing code to fetch data or to set the value of widget properties. Instead, you can use declarative JSON data bindings to connect the fields in widgets to fields in data sources, even if those data sources are on remote servers. You do not have to write the code to update widget fields; it is generated automatically.
For example, suppose you develop banking services apps for banks. Using other architectures, the code for the business logic typically resides in the same code modules as the code for the navigation logic, presentation logic, or both. As a result, you will not be able to reuse the code from previous apps. Instead, you will probably need to start the app-development process from scratch.
With Volt MX Reference Architecture, however, you can completely change the user interface and navigation logic when you write a new banking app, without having much impact on the business logic at all. Volt MX Reference Architecture separates all three types of program logic into different modules, which each have definite interfaces to encapsulate their internal functionality. This feature makes it easy to perform major changes to one part of the app, without breaking the rest of it. Presentation objects are completely separate from domain objects and business logic objects; so your app could potentially even support multiple presentations, possibly even simultaneously. * Designers, developers, and testers can work simultaneously: Volt MX Reference Architecture lets designers and developers to easily work on their specific app components, without interfering with each other's work. Designers can create the user interface, iteratively improve the design, and perform all the testing they need to without impacting code developers on the project. Likewise, developers can write, revise, and test the app's business logic without having to worry about the presentation of the user interface. Furthermore, testers can test separate pieces of the app without waiting for the whole app to be complete. For instance, they can test the business logic even if the user interface has not been built. Or, they can test the user interface and navigation logic, regardless of whether or not the app's core business logic has been implemented.
ORM capabilities: As many real-world apps generally use many remote data sources and services, object relational mapping (ORM) plays a critical role in app design and development. Object relational mapping (ORM) is a mechanism that makes it possible to address, access, and manipulate objects without having to consider how those objects relate to their data sources. Volt MX Reference Architecture simplifies ORM tasks by providing methods to discover ORM metadata. Your app can also use Volt MX Reference Architecture methods to auto-generate ORM queries.