Gli ultimi tutorial di sviluppo web
 

AppML architettura


Architettura moderna Web

AppML combina le più moderne tecniche e le idee di sviluppo web moderno up-to-date.

AppML concentrarsi sulla velocità, semplicità e basso costo:

  • Service Oriented Architecture MVC
  • Bassissimo consumo di larghezza di banda
  • Ottimizzato per il Cloud Computing
  • Separazione completa del contenuto dalla presentazione
  • Intelligente programmazione dichiarativa
  • Sviluppo Web rapida e agile
  • Altamente scalabile e testabile
  • Facile configurazione e riconfigurazione
  • Intelligente supporto per gli account degli utenti e ruoli

MVC Architettura

AppML utilizza un'architettura MVC

MVC sta per Model, View, Controller di

Il modello descrive l'applicazione.

The View visualizza i dati.

Il controller controlla l'applicazione (of course) .

Wikipedia: Model, View, Controller di

MVC

Il MODELLO - Just JSON

Il modello descrive l'applicazione.

Il modello è riutilizzabile su diverse piattaforme hardware e software (Server, PC, iPhone, Tablets, etc.) .

Il modello non è interessato con la presentazione o l'interfaccia utente (UI) .

Il modello è scritto in JSON:

Modello

{
"rowsperpage" : 10,
"database" : {
    "connection" : "localmysql",
    "sql" : "SELECT CustomerName, City, Country FROM Customers",
    "orderby" : "CustomerName"
},
"filteritems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}
],
"sortitems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}
]
}

The View - Proprio HTML

La vista è l'interfaccia utente (User Interface) per la visualizzazione (and input) dei dati.

La vista è scritto in HTML e CSS:

HTML View

<!DOCTYPE html>
<html lang="en-US">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
<script src="http://www.w3ii.com/appml/2.0.3/appml.js"></script>
<body>

<div class="container" appml-data="local?model=model_customers">
<h1>Customers</h1>
<div appml-include-html="inc_listcommands.htm"></div>
<div appml-include-html="inc_filter.htm"></div>

<table class="table table-striped table-bordered">
<tr>
  <th>Customer</th>
  <th>City</th>
  <th>Country</th>
</tr>
<tr appml-repeat="records">
  <td>{{CustomerName}}</td>
  <td>{{City}}    </td>
  <td>{{Country}} </td>
</tr>
</table>
</div>

</body>
</html>
Prova tu stesso "

Il CONTROLLER - cliente e / o script server

Uno script client nella pagina web in grado di controllare l'applicazione:

  • AppML può visualizzare i dati, come definito nel modello
  • AppML può visualizzare i dati come definito da attributi HTML.
  • Le applicazioni possono eseguire AppML indipendente HTML (hidden)
  • (Opzionalmente) AppML può richiedere dati del modello da un server web (server SQL)
  • utenti (opzionale) AppML possibile modificare i dati
  • (Opzionalmente) AppML può inviare dati a un server Web

Uno script server può controllare l'applicazione da:

  • Ricevere richieste dal client (browser)
  • Tornando dati al client
  • Ricezione dei dati da parte del cliente
  • Aggiornamento dei dati sul server
  • Prendersi cura di autenticazione e protezione

L'arte della programmazione

Mantenere dimensioni delle applicazioni e la complessità bassa, è il problema principale di tutta la programmazione.

Controllo complessità delle applicazioni del computer, è la vera arte della programmazione.


programmazione dichiarativa

Lo sviluppo del software si rompe spesso scadenze e budget. Finito il software è spesso pieno di errori di codifica. Questo è perché il codice di computer è difficile da sviluppare, testare e gestire.

Coding è fuori. Si dovrebbe descrivere più cosa fare, meno Come fare.

Con AppML Dichiarate l'applicazione nel modello e nella vista.

Con AppML c'è meno (sometimes nothing) al codice.

Wikipedia: programmazione dichiarativa


Sviluppo rapido di applicazioni e Agile

Controllo complessità delle applicazioni del computer è la vera arte della programmazione.

Mantenendo dimensioni delle applicazioni e complessità sotto sotto controllo è il problema principale di tutta la programmazione.

RAD è un metodo di sviluppo del software che utilizza la pianificazione minima a favore di prototipazione rapida.

AppML offre prototipazione super-veloce, fino a 100 volte più veloce rispetto ai metodi di sviluppo tradizionali.

prototipi applicazione può essere eseguita direttamente dal modello di applicazione, senza alcuna codifica.

Wikipedia: Rapid Application Development

sviluppo agile del software è un metodo basato sullo sviluppo step-by-step, in cui le soluzioni sono creati da utenti e sviluppatori in collaborazione.

Con AppML, le applicazioni possono essere scritte passo dopo passo, in piccoli incrementi, dai prototipi alle applicazioni complete.

Wikipedia: sviluppo agile del software


Codice primo

Un'applicazione web può essere sviluppata in due modi diversi:

1. Codice Primo: Utilizzando pre-programmata, pre-testato codice, aggiungendo solo nuove descrizioni di applicazione.

2. Contratto Primo: Codifica l'applicazione da zero utilizzando la descrizione completa esigenza applicativa.

AppML utilizza il concetto più razionale: primo codice.


Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) è un'architettura per la creazione di applicazioni web.

SOA offre bassi costi di sviluppo ed elevata flessibilità.

Con SOA, le applicazioni possono essere create da zero, o da infrastrutture IT esistenti, e possono essere usate, da diverse applicazioni, su diversi hardware e software.

SOA è una misura perfetta per MVC e programmazione dichiarativa, in cui i dati possono essere facilmente consumate senza la preoccupazione di come.


Servizi web

Un servizio Web è un'interfaccia di dati, identificati da un URL, proprio come una pagina web.

Un servizio web è diverso da una pagina web, solo nel suo modo di comunicare le informazioni.

Un tipico servizio Web fornisce solo i dati a una pagina web.

Con AppML, HTML è l'interfaccia utente, un Web Service fornisce i dati.

Web Services originali sono stati progettati per utilizzare standard XML come SOAP, WSDL, UDDI e.

I moderni servizi web come AppML sono molto più facili da usare.

  • Più semplice da capire - Può essere letto da esseri umani
  • Leggero - nessun codice non necessario o markup
  • Facile da implementare - senza gli strumenti di sviluppo necessari

Vantaggi di Web Services

  • I servizi Web sono piccole unità di codice
  • I servizi Web sono progettati per gestire un numero limitato di compiti
  • protocolli di comunicazione basati su servizi Web utilizzano HTTP
  • I servizi Web sono indipendenti dai sistemi operativi
  • I servizi Web sono indipendenti di linguaggi di programmazione
  • I servizi Web possono connettersi diverse applicazioni, sistemi e dispositivi
  • Web Services rende facile per distribuire informazioni
  • Web Services favorisce lo sviluppo rapido di applicazioni

Esempio: un piccolo programma progettato per la fornitura di altre applicazioni con i prezzi di borsa.

Esempio: Gli orari dei voli e dei sistemi di prenotazione di biglietti.

Poiché i servizi web utilizzano HTTP, che sono indipendenti da entrambi i sistemi operativi e linguaggi di programmazione.


Cloud computing

Cloud Computing è un'estensione della SOA: Application-as-a service, Storage-as-a-service, Data-as-a-service.

Per la maggior parte delle persone, il Cloud Computing è circa la memorizzazione dei dati sul web:

  • Messaggi di posta elettronica e calendari
  • I documenti e fogli di calcolo
  • Libri, note e di fare le liste
  • Musica, immagini e filmati
  • Database e applicazioni

Le ragioni sono abbastanza evidenti:

  • Per avere accesso ai dati da tutto il mondo
  • Per condividere i miei dati con gli altri
  • Per sopravvivere modifiche hardware o crash

Con AppML, è molto facile da mettere entrambi i database e le applicazioni nel cloud.