Meteor (framework)

Meteor est un framework open-source de développement web en JavaScript basé sur Node.js. Le projet vise à créer un framework de « nouvelle génération » induisant un changement de paradigme notamment sur la manière de considérer les architectures client-serveur.

Pour les articles homonymes, voir Meteor.

Meteor

Informations
Développé par Meteor (société)
Première version
Dernière version 2.1 ()[1]
Dépôt github.com/meteor/meteor
Assurance qualité Intégration continue
Écrit en JavaScript, C et C++
Type Framework web (en)
Framework JavaScript (en)
Licence Licence MIT
Site web www.meteor.com

Le projet est sorti en version stable 1.0 le

Principes

Meteor permet de développer avec le même langage (en Javascript ou dans un langage compilant vers Javascript comme CoffeeScript ou Dart) et avec la même API sur le client et sur le serveur. Ce choix d’architecture permet de déplacer facilement un traitement du serveur vers le client (et réciproquement) voire de le dupliquer par exemple dans le cas de la validation d'un formulaire.

Dans cette logique, Meteor inclut un système de gestion de base de données côté client, fonctionnalité originale du framework. Il est ainsi possible d'effectuer des requêtes même en étant déconnecté du serveur. Cela permet notamment à Meteor d'inclure par défaut, des mécanismes de compensation de latence. Par exemple, l'envoi d'un message dans un chat sera instantanément ajouté au fil des messages au clic sur le bouton "Envoyer", tandis que la vérification du message se fera en arrière-plan côté serveur. Ce mécanisme permet l'utilisation de la programmation réactive côté client.

Histoire

Initialement nommé Skybreak, le projet est renommé Meteor le [2]. Le , l'équipe responsable du projet annonce une levée de fonds de 11,2 millions de dollars assurant ainsi la pérennité à moyen terme du projet et permettant d'animer une communauté autour de lui[3].

Historique des versions

Code des couleurs
Rouge Ancienne version, non supportée
Vert Version actuelle, supportée
Bleu Version à venir
No  Version Nom de code Nom de test Date de publication
1 0.1
2 0.2
3 0.3
4 0.4
5 0.5
6 0.6
7 0.7 [4]
8 0.8
9 0.9
10 1.0 [5]
11 1.1 [6]
12 1.2 [7]
13 1.3 [8]
14 1.4 [9]
15 1.5
16 1.6
17 1.7 [10]
18 1.8 [11]

Forces de Meteor

Les forces[12]

  • Communauté : Meteor dispose d'une communauté active autour du projet[13]. Il fait partie des dix projets les plus étoilés de github[14].
  • Embrace the Ecosystem : Meteor est un framework complètement open-source, de même que ses composants et ses nombreux plugins.
  • Meteor est fortement modulable grâce à ses briques autonomes (smart packages) officielles ou issues de la communauté et répertoriées sur atmospherejs.com[15]
  • "Data on the Wire" : Contrairement à PHP et ses frameworks, Meteor, n'envoie pas de code HTML, il envoie des données et laisse au client le soin de faire le rendu de l'application.
  • Un seul langage : Meteor se basant sur Node.js, il en reprend son principe : "du JavaScript côté serveur".
  • Base de données partout : Dans Meteor, il est possible d’accéder à la base de données depuis le client comme depuis le serveur[16].
  • Compensation des latences : Meteor étant basé sur le temps réel, il demeure une latence, même très faible. C'est pourquoi il prend soin de compenser cette latence dans le navigateur : plutôt que d'attendre que les données envoyées ne soient renvoyées, il modifie l'affichage en avance. Ainsi, la sensation de latence disparaît complètement.
  • "Full Stack Reactivity" : Absolument tout dans Meteor peut changer à n'importe quel moment dans le navigateur du client, et ce sans que le client n'ait effectué une seule requête.
  • Au niveau du SEO, Meteor est maintenant optimisé pour faire indexer le contenu grâce au plugin spiderable.

Voir aussi

Articles connexes

Notes et références

  1. « release/METEOR@2.1 », (consulté le )
  2. (en) Skybreak s'appelle maintenant Meteor
  3. (en) Levée de fonds de 11,2 millions de dollars
  4. « Meteor 0.7.0: Scalable database queries using MongoDB oplog instead of poll-and-diff », (consulté le )
  5. (en) « meteor/meteor », sur GitHub (consulté le )
  6. (en) « meteor/meteor », sur GitHub (consulté le )
  7. (en) « meteor/meteor », sur GitHub (consulté le )
  8. (en) « meteor/meteor », sur GitHub (consulté le )
  9. Zoltan Olah, « Announcing Meteor 1.4 - Updated Node and MongoDB versions & more » (consulté le )
  10. (en) « meteor/meteor », sur GitHub (consulté le )
  11. (en) « meteor/meteor », sur GitHub
  12. Creez une single-page app avec node.js et meteor
  13. Voir le tableau de bord des fonctionnalités à venir, ouvert aux contributions et votes de la communauté
  14. (en) Annonce de nos 20 millions de dollars de financement
  15. (en) Site atmospherejs.com
  16. (en) Mini base de données
  • Portail de la programmation informatique
  • Portail des logiciels libres
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.