<AppML> uses an MVC Architecture
MVC stands for Model, View, Controller
The Model describes your application.
The View displays your data.
The Controller controls your application (of course).
Wikipedia: Model, View, Controller
The model describes your application, and is reusable for different hardware and software platforms (PC, iPhone, Tablets, etc). It is not concerned with user interface (UI) or presentation.
The model is written in XML, and stored on your web server:
The model above defines the data source to be from a database named Northwind.
The model allows data to be fetched using a predefined SQL. It also allows data to be ordered by and queried by Customer, City, and Country.
The view is the UI (User Interface). Normally it is an HTML page for displaying and (optionally) input data:
<h1>My First Web Application</h1>
The HTML page above runs a script that creates an AppML object on the screen for displaying data inside a placeholder called "Place01".
The server script controls the application by:
The browser script controls the application this way:
Your data folder: Data
Your images folder: Images
Your models folder: Models
Your application: Demo.htm
Your stylesheet: Demo.css
<AppML> Configuration: appml_config.php (or .aspx)
<AppML> Stylesheet: appml.css
<AppML> Browser Controller: appml.js
<AppML> Server Controller: appml.php (or .aspx)
RAD is a software development method that uses minimal planning in favor of rapid prototyping.
<AppML> delivers super-fast prototyping, up to 100 times faster than traditional software development methods.
Application prototypes can run directly from the application model, without any coding.
Agile software development is a method based on step-by-step development, where solutions are created by users and developers in collaboration.
With <AppML>, applications can be written step by step, in small increments, from prototypes to a full applications.
Software development often breaks deadlines and budgets. Finished software is often full of coding errors. This is because computer code is difficult to develop, test, and maintain.
Coding is Out. You should describe more What to do, less How to do it.
With <AppML> you Declare your application in the Model.
With <AppML> there is less (or nothing) to code.
Wikipedia: Declarative Programming
A web application can be developed in two different ways:
1. Code First: Using pre-programmed, pre-tested code, adding only new application descriptions.
2. Contract First: Coding the application from scratch using the full application requirement description.
<AppML> uses the most rational concept: Code First.
A Web Service is an interface to data, identified by a URL, just like a web page. It differs from a web page, only in the way it communicates information.
A typical Web Service provides data to a web page.
With <AppML>, HTML displays the user interface, and <AppML> provides the data.
Original Web Services were designed to use XML standards like SOAP, WSDL, and UDDI.
Modern Web Services like <AppML> are much easier to use.
Service Oriented Architecture (SOA) is an architecture for building web applications. It offers low development costs and high flexibility. With SOA, applications can be created from scratch, or from existing IT infrastructures, and be used, by different applications, on different hardware and software. SOA is a perfect fit for MVC and Declarative Programming, where data can be easily consumed without the concern about how.
An example of a web service can be a small program designed to supply other applications with the latest stock exchange prices.
Since web services use HTTP protocols to communicate with other systems, web services are independent of both operating systems and programming languages.
An application calling a web service will always send its requests using HTTP. The calling application will never be concerned about the operating system or the programming language running on the other computer.
Web services can create new possibilities for many businesses, because it provides an easy way to distribute information to a large number of consumers.
One example could be flight schedules and ticket reservation systems.
Cloud Computing is an extension of SOA: Application-as-a service, Storage-as-a-service, Data-as-a-service.
For most people, Cloud Computing is about storing data on the web:
The reasons are pretty obvious:
With <AppML>, it is very easily to put databases and applications in the cloud.