Je voulais utiliser la pile JavaScript MEAN, mais j'ai remarqué qu'il y a deux piles différentes avec leur propre site Web et leurs propres méthodes d'installation: mean.js et mean.io. Je suis donc venu me poser cette question: "Laquelle dois-je utiliser?".
Donc, pour répondre à cette question, je demande à la communauté si vous pourriez expliquer quelles sont les différences entre ces deux? Et si possible des avantages et des inconvénients? Parce qu'ils me ressemblent beaucoup.
Réponses:
Ils sont essentiellement les mêmes ... Ils utilisent tous les deux swig pour les modèles, ils utilisent tous les deux le karma et le mocha pour les tests, l'intégration du passeport, le nodemon, etc.
Pourquoi si similaire? Mean.js est un fork de Mean.io et les deux initiatives ont été lancées par le même gars ... Mean.io est maintenant sous l'égide de la société Linnovate et il semble que le gars (Amos Haviv) ait arrêté sa collaboration avec cette société et a commencé Mean.js. Vous pouvez en savoir plus sur les raisons ici .
Maintenant ... les principales (ou petites) différences que vous pouvez voir en ce moment sont:
ÉCHAFAUDAGE ET GÉNÉRATION DE CHAUDIÈRE
Mean.io utilise un outil cli personnalisé nommé 'mean'
Mean.js utilise des générateurs Yeoman
MODULARITÉ
Mean.io utilise une modularité de packages de nœuds plus autonome avec des fichiers client et serveur à l'intérieur des modules.
Mean.js utilise des modules juste en frontal (pour angulaire) et les connecte à Express. Bien qu'ils travaillaient également sur des modules verticaux ...
CONSTRUIRE UN SYSTÈME
Mean.io a récemment migré vers
gulp Mean.js utilise grunt
DÉPLOIEMENT
Les deux ont Dockerfiles dans leurs référentiels respectifs, et Mean.io a une installation en un clic sur Google Compute Engine , tandis que Mean.js peut également être déployé avec une installation en un clic sur Digital Ocean .
DOCUMENTATION
Mean.io a des documents ok
Mean.js a des documents IMPRESSIONNANTS
COMMUNAUTÉ
Mean.io a une plus grande communauté car il était le passe-
partout d' origine Mean.js a moins d'élan mais une croissance régulière
Sur le plan personnel, j'aime davantage la philosophie et l'ouverture de MeanJS et plus l'approche traction et modules / packages de MeanIO. Les deux sont agréables, et vous finirez probablement par les modifier, vous ne pouvez donc pas vraiment vous tromper en choisissant l'un ou l'autre. Prenez-les simplement comme point de départ et comme exercice d'apprentissage.
SOLUTIONS ALTERNATIVES «MOYENNES»
MEAN est un moyen générique (inventé par Valeri Karpov ) pour décrire un passe-partout / framework qui prend "Mongo + Express + Angular + Node" comme base de la pile. Vous pouvez trouver des frameworks avec cette pile qui utilisent d'autres dénominations, certains d'entre eux étant très bons pour le RAD (Rapid Application Development) et la construction de SPA. Par exemple:
Vous avez également Hackathon Starter . Il n'a pas A de MEAN (c'est 'MEN'), mais ça bascule ..
S'amuser!
la source
Tout d'abord, MEAN est l'acronyme de M ongoDB, E xpress, A ngular et N ode.js.
Il identifie de manière générique l'utilisation combinée de ces technologies dans une "pile". Il n'y a rien de tel que " le cadre MEAN".
Lior Kesos de Linnovate a profité de cette confusion. Il a acheté le domaine MEAN.io et a mis du code sur https://github.com/linnovate/mean
Heureusement, ils ont reçu beaucoup de publicité, et il y a de plus en plus d'articles et de vidéos sur MEAN. Lorsque vous "cadre moyen" sur Google, mean.io est le premier de la liste.
Malheureusement, le code sur https://github.com/linnovate/mean semble mal conçu .
En février, je suis tombé moi-même dans le piège. Le site mean.io avait un design accrocheur et le repo Github avait plus de 1000 étoiles. L'idée de remettre en cause la qualité ne m'a même pas traversé l'esprit. J'ai commencé à l'expérimenter, mais il n'a pas fallu trop de temps pour tomber sur des choses qui ne fonctionnaient pas et des morceaux de code déroutants.
L'historique des commit était également assez inquiétant. Ils ont repensé le code et la structure du répertoire plusieurs fois, et la fusion des nouvelles modifications prend trop de temps.
Ce qui est bien avec le code mean.io et mean.js, c'est qu'ils sont livrés avec une intégration Bootstrap. Ils sont également fournis avec l'authentification Facebook, Github, Linkedin, etc. via PassportJs et un exemple de modèle (article) sur le backend sur MongoDB qui se synchronise avec le modèle frontend avec AngularJS.
Selon le site Web de Linnovate:
Du site Web, il semble que leur ensemble de compétences de base soit Drupal (un système de gestion de contenu PHP) et ce n'est que récemment qu'ils ont commencé à utiliser Node.js et AngularJS.
Dernièrement, je lisais le blog Mean.js et les choses sont devenues plus claires. Ma compréhension est que le développeur Javascript principal (Amos Haviv) a quitté Linnovate pour travailler sur Mean.js, laissant le projet MEAN.io avec des personnes qui sont des développeurs novices Node.js qui ralentissent la compréhension du fonctionnement des choses.
À l'avenir, les choses pourraient changer, mais pour l'instant, j'éviterais d'utiliser mean.io. Si vous cherchez un passe-partout pour un quickstart, Mean.js semble une meilleure option que mean.io.
la source
Voici une comparaison côte à côte de plusieurs démarreurs / générateurs d'applications et d'autres technologies, notamment MEAN.js, MEAN.io et cleverstack. Je continue à ajouter des alternatives au fur et à mesure que je trouve du temps et, comme cela arrive, la liste des avantages potentiellement fournis ne cesse de s'allonger. Aujourd'hui, c'est jusqu'à environ 1600. Si quelqu'un veut aider à améliorer sa précision ou son exhaustivité, cliquez sur le lien suivant et faites un questionnaire sur quelque chose que vous savez.
Projet de comparaison des technologies d'application
À partir de cette base de données, le système génère des rapports comme celui-ci:
Rapport de compromis entre MeanJS et MeanIO
la source
La feuille de compromis de démarrage de ma feuille de calcul de comparaison présente des comparaisons individuelles complètes entre chaque générateur. Vous n'avez donc plus besoin de sélectionner de manière distordue de grandes choses à dire sur votre favori.
Voici celui entre générateur-angulaire-fullstack et MEAN.js. Les pourcentages sont des valeurs pour chaque prestation basées sur mes pondérations personnelles, où un générateur parfait serait à 100%
générateur- angulaire- fullstack offre 8% que MEANJS.org ne fait pas
MeanJS.org. offre 9% que le générateur-angulaire-fullstack ne fait pas
Voici celui entre MEAN.io et MEAN.js dans un format plus lisible
la source
Je suis surpris que personne n'ait mentionné le générateur angulaire fullstack de Yeoman . C'est le générateur de communauté Yeoman numéro un, avec actuellement 1490 étoiles sur la page du générateur par rapport aux 81 étoiles de Mean.js (ce qui n'est certes pas une comparaison équitable étant donné la nouvelle MEANJS). Il semble être activement maintenu et se trouve dans la version 2.05 au moment où j'écris ceci. Contrairement à MEANJS, il n'utilise pas Swig pour les modèles. Il peut être échafaudé avec un passeport intégré.
la source