Architecture Web moderne
Appml combine les techniques les plus et les idées mises à jour du développement web moderne.
Appml concentrer sur la vitesse, la simplicité et faible coût:
- Service Oriented Architecture MVC
- Extrêmement faible consommation de bande passante
- Optimisé pour le Cloud Computing
- Séparation complète du contenu de la présentation
- La programmation déclarative intelligente
- Développement Web rapide et agile
- Hautement évolutive et testable
- Configuration facile et Reconfiguration
- Smart Support pour les comptes d'utilisateurs et rôles
architecture MVCAppml utilise une architecture MVC MVC signifie modèle, vue, contrôleur Le modèle décrit votre application. La vue affiche vos données. Le contrôleur contrôle votre application (of course) . Wikipedia: Modèle, Vue, Contrôleur |
Le modèle - Just JSON
Le modèle décrit l'application.
Le modèle est réutilisable sur différentes plates - formes matérielles et logicielles (Server, PC, iPhone, Tablets, etc.) .
Le modèle ne porte pas sur la présentation ou l' interface utilisateur (UI) .
Le modèle est écrit en JSON:
maquette
{
"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"}
]
}
VIEW - Just HTML
La vue est l'interface utilisateur (User Interface) pour l' affichage (and input) d' (and input) données.
La vue est écrit en HTML et CSS:
HTML Voir
<!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>
Essayez vous - même » Le contrôleur - Client et / ou des scripts de serveur
Un script client dans la page Web peut contrôler l'application:
- Appml peut afficher des données comme défini dans le modèle
- Appml peut afficher des données telles que définies par les attributs HTML.
- Applications appml peuvent fonctionner indépendamment de HTML (hidden)
- (En option) appml peut demander des données de modèle à partir d'un serveur Web (serveur SQL)
- (En option) les utilisateurs peuvent modifier les données appml
- (En option) appml peut envoyer des données à un serveur Web
Un script serveur peut contrôler l'application par:
- Recevoir les demandes du client (browser)
- De retour des données au client
- Réception de données du client
- Mise à jour des données sur le serveur
- La prise en charge de l'authentification et de la sécurité
L'art de la programmation
Garder la taille de l'application et de la complexité faible, est le principal problème de la programmation.
Contrôle de la complexité des applications informatiques, est le véritable art de la programmation.
programmation déclarative
Développement de logiciels casse souvent les délais et les budgets. logiciel fini est souvent pleine d'erreurs de codage. Ceci est parce que le code informatique est difficile de développer, tester et maintenir.
Le codage est Out. Vous devez décrire plus Que faire, moins Comment faire.
Avec appml vous déclarez votre application dans le modèle et dans la vue.
Avec appml il y a moins (sometimes nothing) au code.
Wikipedia: déclarative programmation
Développement d'applications rapide et agile
Contrôle de la complexité des applications informatiques est le véritable art de la programmation.
Garder la taille de l'application et de la complexité sous sous contrôle est le principal problème de la programmation.
RAD est une méthode de développement de logiciels qui utilise un minimum de planification en faveur du prototypage rapide.
Appml offre prototypage ultra-rapide, jusqu'à 100 fois plus rapide que les méthodes traditionnelles de développement.
prototypes d'applications peuvent fonctionner directement à partir du modèle d'application, sans codage.
Wikipedia: Développement rapide d'applications
le développement de logiciels Agile est une méthode basée sur le développement étape par étape, où les solutions sont créées par les utilisateurs et les développeurs en collaboration.
Avec appml, les applications peuvent être écrites étape par étape, par petits incréments, des prototypes à des applications complètes.
Wikipedia: développement logiciel Agile
premier code
Une application web peut être développée de deux façons différentes:
1. Code Première: Utilisation de pré-programmé, le code pré-testé, en ajoutant que de nouvelles descriptions d'application.
2. Contrat Première: Codage de l'application à partir de zéro en utilisant la description complète des exigences d'application.
Appml utilise le concept le plus rationnel: Code d' abord.
L' architecture orientée services (SOA)
L' architecture orientée services (SOA) est une architecture pour la construction d' applications web.
SOA offre de faibles coûts de développement et une grande flexibilité.
Avec SOA, les applications peuvent être créées à partir de zéro, ou à partir des infrastructures informatiques existantes, et être utilisés, par différentes applications, sur différents matériels et logiciels.
SOA est un ajustement parfait pour MVC et programmation déclarative, où les données peuvent être facilement consommés sans problème sur la façon.
Services Web
Un service Web est une interface de données, identifiées par une URL, comme une page Web.
Un service Web diffère d'une page Web, que dans la façon dont il communique l' information.
Un service Web typique ne fournit que des données sur une page Web.
Avec appml, HTML est l'interface utilisateur, un service Web fournit les données.
Web Services originaux ont été conçus pour utiliser les normes XML comme SOAP, WSDL et UDDI.
Web Services modernes comme appml sont beaucoup plus faciles à utiliser.
- Plus facile à comprendre - Peut être lu par les humains
- Léger - pas de code inutile ou balisage
- Facile à mettre en œuvre - aucun outil de développement requis
Avantages des services Web
- Les services Web sont de petites unités de code
- Les services Web sont conçus pour gérer un ensemble limité de tâches
- services Web utilisent des protocoles de communication basés HTTP
- Les services Web sont indépendants des systèmes d'exploitation
- Les services Web sont indépendants des langages de programmation
- Les services Web peuvent se connecter différentes applications, systèmes et dispositifs
- Web Services facilite la diffusion de l'information
- Services Web favorise le développement rapide d'applications
Exemple: Un petit programme conçu pour fournir d'autres applications avec les prix de la bourse.
Exemple: Les horaires des vols et des systèmes de réservation de billets.
Étant donné que les services Web utilisent le protocole HTTP, ils sont indépendants des deux systèmes d'exploitation et langages de programmation.
Cloud computing
Cloud Computing est une extension de la SOA: Application-as-service, Storage-as-a-service, Data-as-a-service.
Pour la plupart des gens, le Cloud Computing est sur le stockage de données sur le Web:
- Les e-mails et calendriers
- Documents et feuilles de calcul
- Livres, notes et faire des listes
- Musique, photos et films
- Bases de données et applications
Les raisons sont assez évidentes:
- Pour avoir accès aux données de partout
- Pour partager mes données avec d'autres
- Pour survivre aux changements de matériel ou des accidents
Avec appml, il est très facile de mettre les deux bases de données et applications dans le nuage.