Nel 1999 Refsnes dati ha sviluppato la prima versione di AppML.
Già allora, AppML si basava su richiesta HTTP comunicazione tra client Web e il server web. In seguito questo metodo divenne noto come AJAX.
Nel settembre 2000, è stato avviato un progetto di sviluppo per un grande Norvegese cliente. L'obiettivo del progetto era quello di convertire un enorme sistema di informazioni (circa 300 applicazioni) da un'applicazione desktop di Windows per una moderna applicazione Internet, utilizzando solo AppML.
Il sistema AppML-based è stato lanciato nel 2001, diversi mesi prima di pianificare, come prima applicazione commerciale AJAX al mondo. Il progetto è stato un enorme successo, con il tempo di sviluppo ridotto del 75% rispetto allo sviluppo web ordinario. Da allora, sono state aggiunte nuove applicazioni, e il sistema ora si estende su più di 1000 applicazioni in esecuzione.
Nel febbraio 2015, w3ii rilanciato AppML come un nuovo prodotto, aperto al pubblico.
AppML obiettivi di progettazione:
- applicazioni AppML devono eseguire su Internet
- applicazioni AppML deve essere indipendente dalla piattaforma
- applicazioni AppML devono utilizzare solo standard Internet (HTML, CSS, JavaScript)
- applicazioni AppML devono supportare una varietà di esigenze applicative
- applicazioni AppML devono essere autodescrittivi
- applicazioni AppML devono essere facili da sviluppare, mantenere e cambiamento
- applicazioni AppML devono essere a prova di futuro
I paragrafi che seguono descrivono la visione di Refsnes dati originali s (1999) su f applicazioni web uture.
Eseguibili morirà, JavaScript vivrà
Eseguibili compilati (compiled from languages like C or Java) non possono funzionare su hardware differente.
Eseguibili (EXE files, ActiveX and COM objects, DLL-files) sono componenti che impediscono lo sviluppo di applicazioni che possono essere eseguite su Internet.
applicazione futuro non utilizzerà, o affidarsi a, eseguibili o altri componenti installati sul computer del cliente.
Le nostre proposte:
Scrivi le tue future applicazioni utilizzando solo HTML, CSS e JavaScript.
Assicurarsi che le future applicazioni eseguite in qualsiasi browser web.
Applicazioni Web sarà Internet Services
La storia è piena di grandi, appositamente costruito, applicazioni. Molti di questi sono morti molto rapidamente, perché non potrebbero sopravvivere requisiti modifiche.
Applicazioni devono essere flessibili, generalizzata e regolare grazia a modifiche, senza essere sbriciolato o distrutto.
Le domande devono essere in grado di scalare da sostenere un paio di milioni di richieste al giorno.
Le domande devono essere in grado di diffondersi da un server a molti, o per spostarsi tra i server, senza rompere l'applicazione.
Le domande devono essere in grado di collaborare con altre applicazioni.
Le domande non devono contenere grandi masse di codice.
Le domande devono essere suddivisi in servizi più piccoli, che sono facili da creare e di facile manutenzione.
Le domande devono essere un insieme di servizi Internet che possono restituire i dati per le richieste Internet presentate.
Le domande devono richiedere servizi tramite protocolli Internet standard senza mantenere una connessione permanente al server.
Le nostre proposte:
Scrivi le tue future applicazioni che utilizzano SOA basato su Internet (Service Oriented Architecture) .
Fai la tua servizi applicativi generale e flessibile, e pronto a servire diversi tipi di richieste.
Le applicazioni future sarà facile per creare e modificare
Client e server si scambiano i dati in modo semplice comprensibile.
Le applicazioni non saranno codificate, se può essere evitato.
Le domande saranno creati e modificati, modificando i modelli, non modificando il codice.
descrizioni delle applicazioni saranno leggibili dagli esseri umani.
descrizioni delle applicazioni saranno auto descrivere.
Le domande saranno scritti dagli utenti, non programmatori.
Le nostre proposte:
Utilizzare i file di testo leggibili per descrivere i servizi, e di fornire servizi mediante l'esecuzione di queste descrizioni.
Utilizzare i file di testo (like JSON files) per descrivere le applicazioni.
Utilizzare i file di testo (like JSON files) per lo scambio di dati.
Utilizzare HTML, CSS e JavaScript per eseguire le applicazioni.
Tre sviluppatori Web Piccole ...
C'era una volta c'erano tre piccoli sviluppatori web in via di sviluppo un nuovo sito web.
1. Il primo sviluppatore web stava usando AppML.
2. Il secondo sviluppatore web stava usando il suo linguaggio di programmazione server preferiti.
3. Il terzo era utilizzando un framework di sviluppo web aziendale professionale.
Il primo sviluppatore web ha avuto un demo installato e funzionante in due giorni. Dopo la collaborazione con gli utenti, un prototipo di uscire era pronto in una settimana. E dopo due settimane di test, un sito web intelligente, veloce e facile da usare,, era pronto a pubblicare.
Il secondo sviluppatore web ha avuto il suo sito web pronto dopo 6 mesi. Ma il WWW aveva cambiato le sue esigenze, e non era soddisfatto. Lo sviluppatore web non ha potuto fare grandi cambiamenti al suo progetto perché conteneva troppo codice. Così ha iniziato lo sviluppo della versione 2.
Il terzo sviluppatore web non è riuscito a completare il suo lavoro. Il framework di sviluppo web professionale è stata molto difficile da usare, molto difficile da capire, e quasi impossibile da test.
Date un'occhiata a come il primo sviluppatore lo ha fatto .