Ultimele tutoriale de dezvoltare web
 

AppML Arhitectură


Arhitectura modernă Web

AppML combină cele mai noi tehnici și idei de dezvoltare web moderne de până la zi.

AppML se concentreze pe viteză, simplitate și costuri reduse:

  • Service Oriented Architecture MVC
  • Consum extrem de redus Lățime de bandă
  • Optimizat pentru Cloud Computing
  • Separarea completă a conținutului de Prezentare
  • Programare declarativă inteligent
  • Rapid și Agile Dezvoltare Web
  • Foarte scalabilă și testabile
  • Configurare ușoară și Reconfigurarea
  • Suport inteligent pentru conturile de utilizator și rolurile

Arhitectura MVC

AppML folosește o arhitectură MVC

MVC standuri pentru model, View, Controler

Modelul descrie cererea dumneavoastră.

View afișează datele.

Controlerul controlează aplicația (of course) .

Wikipedia: model, View, Controler

MVC

MODEL - Just JSON

Modelul descrie aplicația.

Modelul este reutilizabil pe diferite platforme hardware și software (Server, PC, iPhone, Tablets, etc.) .

Modelul nu este preocupat de prezentare sau interfața cu utilizatorul (UI) .

Modelul este scris în JSON:

Model

{
"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 - Doar HTML

Vederea este UI (User Interface) pentru afișarea (and input) de (and input) de date.

Punctul de vedere este scris în HTML și 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>
Încearcă - l singur »

Controlerul - client și / sau Scripturi Server

Un script client în pagina de web poate controla aplicația:

  • AppML poate afișa date astfel cum sunt definite în modelul
  • AppML poate afișa date așa cum sunt definite de atribute HTML.
  • Aplicatii AppML poate rula independent de HTML (hidden)
  • (Opțional) AppML poate solicita date model de la un server web (server SQL)
  • Utilizatorii (Opțional) AppML pot edita date
  • (Opțional) AppML poate trimite date la un server de web

Un script server poate controla aplicația prin:

  • Primirea cererilor de la client (browser)
  • Revenind date la client
  • Primirea de date de la client
  • Actualizarea datelor de pe server
  • Având grijă de autentificare și securitate

Arta de programare

Păstrarea dimensiunea aplicare și complexitate redusă, este principala problemă a tuturor programare.

Controlul complexității aplicații informatice, este adevărata artă de programare.


Programare declarativă

Dezvoltarea de software pauze de multe ori termenele si bugetele. software-ul este terminat de multe ori plin de erori de codare. Acest lucru se datorează faptului că un cod de computer este dificil de a dezvolta, testa, și să mențină.

Codificare a mărfurilor este Out. Ar trebui să descrie mai mult Ce să fac, mai puțin Cum de a face acest lucru.

Cu AppML Declari aplicația în model și în vizualizare.

Cu AppML este mai mică (sometimes nothing) cu codul.

Wikipedia: Programare declarativă


Rapid și Agile Application Development

Controlul de complexitate aplicație pentru calculator este adevărata artă de programare.

Păstrarea dimensiunea și complexitatea aplicării sub sub control este principala problemă a tuturor programare.

RAD este o metodă de dezvoltare software care utilizează planificarea minimă în favoarea prototipare rapidă.

AppML oferă prototipuri super-rapid, de până la 100 de ori mai rapid decât metodele tradiționale de dezvoltare.

prototipuri de aplicații pot rula direct din modelul de aplicație, fără nici un fel de codificare.

Wikipedia: Rapid Application Development

Dezvoltarea de software Agile este o metodă bazată pe dezvoltarea pas cu pas, în cazul în care soluțiile sunt create de utilizatori și dezvoltatori în colaborare.

Cu AppML, cererile pot fi scrise pas cu pas, în trepte mici, de la prototipuri la aplicații complete.

Wikipedia: Agile Software Development


Cod Primul

O aplicație web poate fi dezvoltat în două moduri diferite:

1. Cod Primul: Utilizarea pre-programate, cod de pre-testate, adăugarea de noi numai descrieri de aplicații.

2. Contractul întâi: Coding aplicația de la zero, folosind descrierea completa cerința de aplicare.

AppML folosește conceptul cel mai rațional: primul cod.


Service Oriented Architecture (SOA)

Service Oriented Architecture (SOA) este o arhitectură pentru construirea de aplicatii web.

SOA oferă costuri reduse de dezvoltare și flexibilitate ridicată.

Cu SOA, aplicațiile pot fi create de la zero, sau de la infrastructurile IT existente, și să fie folosite, de diferite aplicații, pe diverse tipuri de hardware și software.

SOA este o potrivire perfectă pentru MVC și programare declarativă, în cazul în care datele pot fi ușor consumate fără preocuparea cu privire la modul în care .


Servicii web

Un serviciu web este o interfață pentru date, identificate printr - un URL, la fel ca o pagină web.

Un serviciu web diferă de la o pagină web, numai în felul în care comunică informații.

Un serviciu de web tipic oferă doar date la o pagină web.

Cu AppML, HTML este interfața cu utilizatorul, un serviciu web furnizează datele.

Web Services originale au fost concepute pentru a utiliza standarde XML , cum ar fi SOAP, WSDL si UDDI.

Servicii web modern , cum ar fi AppML sunt mult mai ușor de utilizat.

  • Mai simplu pentru a înțelege - Poate fi citit de oameni
  • Ușoare - fără cod sau marcaj inutile
  • Ușor de implementat - fără instrumente de dezvoltare necesare

Beneficiile de servicii web

  • Serviciile Web sunt unități mici de cod
  • Servicii Web sunt proiectate să se ocupe de un set limitat de sarcini
  • Servicii de web utilizează HTTP bazate pe protocoale de comunicare
  • Serviciile Web sunt independente de sisteme de operare
  • Servicii Web sunt independente de limbaje de programare
  • Servicii de web se pot conecta diferite aplicații, sisteme și dispozitive
  • Web Services face ușor pentru a distribui informații
  • Web Services favorizează dezvoltarea rapidă a aplicațiilor

Exemplu: Un mic program conceput pentru a furniza alte aplicații cu prețurile la bursă.

Exemplu: Orarul de zbor si sisteme de rezervare de bilete.

Din moment ce serviciile web utilizează HTTP, ele sunt independente de ambele sisteme de operare și limbaje de programare.


Cloud Computing

Cloud Computing este o extensie a SOA: Application-ca-serviciu, Depozitare-as-a-service, date-as-a-service.

Pentru majoritatea oamenilor, Cloud Computing este vorba despre stocarea datelor de pe web:

  • Mesaje de poștă electronică și calendare
  • Documente și foi de calcul
  • Cărți, note, și de a face liste
  • Muzică, imagini și filme
  • Baze de date și aplicații

Motivele sunt destul de evidente:

  • Pentru a avea acces la datele de pretutindeni
  • Pentru a partaja datele mele cu alții
  • Pentru a supraviețui modificări hardware sau se blochează

Cu AppML, este foarte ușor de a pune ambele baze de date și aplicații în nor.