J'ai donc beaucoup entendu / lu sur meteor.js. Les tutoriels le font paraître très sportif en tant que framework, mais je suis encore un peu novice en matière de programmation Web.
J'ai essayé au cours du dernier mois et demi de vraiment apprendre node.js et de comprendre comment tout cela s'organise. J'aime la rapidité et la facilité de mise en route, et la communauté qui l'accompagne (ce qui est illustré par le nombre hallucinant de frameworks que vous pouvez obtenir pour Node).
Mais qu'en est-il du météore? Quels en sont les avantages réels et quelle est la différence? Quelqu'un a-t-il commencé en tant qu'utilisateur node.js et «converti» ou s'agit-il encore d'un nouveau framework curieux?
Meteor est un framework construit sur node.js. Il utilise node.js pour déployer mais présente plusieurs différences.
La clé étant qu'il utilise son propre système d'emballage au lieu du système basé sur le module du nœud. Cela facilite la création d'applications Web à l'aide de Node. Node peut être utilisé pour une variété de choses et à lui seul, il est mauvais pour la diffusion de contenu Web dynamique. Les bibliothèques de Meteor facilitent tout cela.
la source
La force de Meteor réside dans sa fonctionnalité de mises à jour en temps réel qui fonctionne bien pour certaines des applications sociales que vous voyez de nos jours où vous voyez les mises à jour de tout le monde pour ce sur quoi vous travaillez. Ces mises à jour sont centrées sur la réplication de sous-ensembles d'une collection MongoDB sous les couvertures en tant que mises à jour de base de données de mini-mongo locales (leur sous-ensemble MongoDB côté client) sur votre navigateur Web (ce qui provoque le déclenchement de plusieurs événements de rendu sur vos modèles). La dernière partie concernant les mises à jour de rendu multiples est également la faiblesse. Si vous voulez que votre interface utilisateur contrôle le moment où l'interface utilisateur s'actualise (par exemple, les pages jQuery AJAX classiques où vous chargez le HTML et vous contrôlez tous les appels AJAX et les mises à jour de l'interface utilisateur), vous combattrez ce mécanisme.
Meteor utilise une belle pile de plugins Node.js (Handlebars.js, Spark.js, Bootstrap css, etc. mais en utilisant son propre mécanisme de packaging au lieu de npm) en dessous avec MongoDB pour la couche de stockage que vous n'avez pas à Penser à. Mais parfois, vous finissez par le combattre aussi ... par exemple, si vous souhaitez personnaliser le thème Bootstrap, cela gâche la séquence de chargement du fichier responsive.css de Bootstrap afin qu'il ne soit plus réactif (mais cela se corrigera probablement lorsque Bootstrap 3.0 est bientôt disponible).
Ainsi, comme tous les «frameworks full stack», les choses fonctionnent très bien tant que votre application correspond à ce qui est prévu. Une fois que vous dépassez cette portée et repoussez les limites, vous pourriez finir par vous battre contre le cadre ...
la source