49 votes

AngularJS ou Backbone.js?

Ainsi, récemment, j'ai commencé à vraiment un gros projet, et de choisir jQuery comme toujours, mais j'ai réalisé que jQuery n'est pas suffisant pour cette tâche, et j'ai fini avec imbriquée pile d'appel des fonctions.

J'ai commencé à regarder Backbone.js et AngularJS, mais je ne peut pas vraiment décider, parce que je suis un peu confus, basé sur les retours des utilisateurs, comme beaucoup de gens disent colonne vertébrale à l'avenir, mais plus de gens disent Angulaire est bien mieux, j'ai donc pensé que je vais demander à la communauté pour m'aider à décider basée sur l'expérience utilisateur et basée sur certaines de mes questions.

Donc mes questions

  • Celui qui communique mieux avec Laravel?
  • Laquelle est la base de code est plus facile à maintenir?
  • Qui a la meilleure performance?
  • Les avantages et les inconvénients basée sur l'expérience?
  • Celui qui vous?
  • Et je sais que cela peut-être idiot mais, que l'on a plus de tutoriels sur le net ce sont des débutants de l'environnement? Ce que je veux dire par là, là où des fois quand j'ai appris quelque chose de nouveau, j'ai pris un coup d'oeil à la documentation, et c'était vraiment cru, sec et avec toute la base d'exemples

75voto

Ben Lesh Points 39290

Bien, on va être bien. Je suis un fan de Anguleuses... mais comme je l'ai dit, ils sont tous les deux très bien.

Celui qui communique mieux avec Laravel?

Ils seront à la fois de communiquer à peu près de la même manière, ils ont tous les deux la poignée RESTE très bien et nous avons par défaut, HTTP/AJAX implémentations.

Laquelle est la base de code est plus facile à maintenir?

Le code de base est que facile à entretenir comme vous l'écrivez. Cela dit, Angulaire forces vous dans une application modulaire de la structure qui pourrait le rendre un peu plus facile à gérer d'un "Où est ce code?" point de vue. La dorsale est un peu plus de forme libre et vous pouvez le configurer comme bon vous semble... donc il y a un donner et prendre.

Qui a la meilleure performance?

À propos de quoi? AJAX ou de REPOS? Ils sont probablement la même chose. Angulaire fait beaucoup plus que de la Dorsale... Angulaire est un moteur de template, une liaison bidirectionnelle MVVM/MVC/MVW architecture, réutilisable contrôle, de filtrage de contenu et mise en forme, etc. Angulaire est plus du tout un cadre où le Squelette est juste une bibliothèque. Cela dit, la façon dont Angulaire poignées de liaison bidirectionnelle sera un peu moins performant que de dire, de knock-out; C'est parce Angulaire déclenche un recueil qui traite tout ce qui est "vu" alors que knock-out utilise un modèle observateur. Dans l'ensemble, sur une application cliente, ce n'est pas vraiment de mal à rendement très bien.

Les avantages et les inconvénients basée sur l'expérience?

Angulaire

pros: Très peu passe-partout. C'est un cadre complet, il a de routage, les contrôles, les templates, les deux sens de la liaison, il gère le REPOS et l'AJAX, la devise mise en forme, le formatage de la date, you name it. Le développement est beaucoup plus rapide. Il fonctionne très bien avec les plugins JQuery. Les Directives et les modules de code et de ré-utilisabilité est très lisse. Il oblige les développeurs dans une certaine structure, de sorte que vous savez où chercher pour les choses. Il vous oblige à l'Injection de Dépendance et est hautement testable à cause de cela. Il a quelques belles framework de test addins pour Jasmine et E2E les tests avec le Rapporteur.

inconvénients: Il oblige les développeurs dans une certaine structure, de sorte que vous savez où chercher pour les choses. La courbe d'apprentissage est un peu plus raide. Gestion de la mémoire peut devenir un problème si vous essayez d'aller "trop gros" avec vos interfaces.

Dorsale:

avantages: Vous pouvez développer votre INTERFACE utilisateur de la manière que vous voulez. Il est plus petit et bien documenté. Vous pouvez structurer votre JS application de la manière que vous choisissez.

inconvénients: beaucoup plus passe-partout. Ce n'est pas un framework complet, vous aurez besoin d'utiliser quelque chose comme knock-out et Sammy à venir à proximité de tout Angulaire. Car il n'y a pas de structure définie, vous aurez à regarder beaucoup plus de chance pour votre équipe de développement de spaghettify votre code. Il a quelques Injection de Dépendance, mais il a été ajouté après coup, et que vous n'êtes pas obligés de l'utiliser. Cela signifie qu'il est très facile d'écrire du code qui est difficile de test de l'unité en raison de couplage causée par le manque de l'injection de dépendance.

Celui qui vous?

Je préfère Angulaire. Je n'ai pas de boeuf/scrupules avec épine Dorsale, cependant. Ils sont à la fois bonnes bibliothèques, Angulaire est simplement plus rapide à se développer dans si vous savez ce que vous faites parce qu'il y a de moins en moins passe-partout. Le problème, c'est la courbe d'apprentissage pour la plupart des gens, vraiment.

Et je sais que cela peut-être idiot mais, que l'on a plus de tutoriels sur les quels sont newbie-friendly? Ce que je veux dire par là, là où des fois quand j'ai appris quelque chose de nouveau, j'ai pris un coup d'oeil à la documentation, et c'était vraiment cru, sec et avec toute la base d'exemples.

C'est le plus difficile à répondre. Épine dorsale a été autour de plus de temps, donc il n'y aura plus de tutoriels... mais le fait que vous allez avoir à rouler votre propre cadre de référence à partir de zéro en collant ensemble des autres bibliothèques, comme le masquage et de Sammy, et le fait que vous devez construire votre propre structure de la demande, signifie essentiellement que d'un "newbie" est plus susceptible de vraiment tirer dans le pied en rapide.

Dans le même temps, Angulaire a une plus raide de la courbe d'apprentissage. Mais une fois que vous avez appris cela, il est extrêmement rapide et facile à travailler avec.

... donc c'est probablement un tirage au sort.

J'espère que ça aide.

11voto

Mark Rushakoff Points 97350

Sans hésitation, je vous recommande épine Dorsale sur Angulaire. Maintenant, Angulaire est en proie à de nombreuses pannes, on trouve dans la toute nouvelle bibliothèque. Pour ne citer que quelques détails:

  • Une mauvaise documentation, ce qui signifie:
    • Difficile de découvrir Angulaire idiomes
    • Plus que quelques occasions, vous aurez à creuser dans Angulaire de la source à comprendre pourquoi quelque chose que vous pensez qui fonctionnera le, ne fonctionne pas
  • Quelques exemples concrets d'applications (bien que beaucoup de jouet apps par exemple, listes de tâches à faire)
  • Communauté plus petite que la concurrence existante

Je pense que tous ces points, l'emportent sur les préoccupations relatives à la performance, etc. Et peut-être que certaines personnes pourraient être en désaccord avec moi sur le pourquoi de ces choses de la matière, mais voici mon expérience avec elle:

Pour environ 6 semaines à très récemment, moi et quelques autres ingénieurs talentueux lutté avec un particulièrement mauvais cas de l'héritage, mal écrit, copiez-les pâtes spaghetti Angulaire de code. Ce n'est pas Angulaire de la faute-mais quand nous étions à déchiffrer le code du client et suis arrivé à quelque chose que nous ne comprenons pas encore Angulaire de code, nous avons tous senti que la documentation officielle rarement nous a permis de comprendre que la composante de l'intention ou recommandés par l'orchestration. Et nous avons toujours eu un onglet ouvert dans le navigateur google Chrome avec l'angle de docs, et nous avons évoqué plusieurs fois par jour. Ensemble, le groupe d'entre nous ont probablement de 35 ans d'expérience dans le logiciel, et nous avons convenu à l'unanimité que la documentation était pauvre.

Tout cela étant dit, Angulaire est toujours sur mon "nous allons vérifier dans un an" liste; une fois qu'il est au-delà de sa phase immature, il sera certainement la peine de ré-évaluer.

11voto

Ismael Ghalimi Points 1638

Nous avons regardé AngularJS, Backbone, Ember, et knock-out dans les détails, il y a six mois. Notre conclusion a été que tous ces cadres sont bonnes, ce qui signifie que vous ne pouvez pas vous tromper avec l'un d'eux. Mais pour nous, AngularJS qui était le meilleur, pour les raisons suivantes:

  • Le code HTML à quoi ressemble le code HTML et le JavaScript à quoi ressemble le code JavaScript
  • Avoir un véritable HTML5 compilateur dans le navigateur web est très puissant
  • L'architecture des Services est extrêmement bien conçu
  • La Performance est grande
  • Avancée des outils de débogage sont disponibles
  • La Documentation est extrêmement complet et plutôt jusqu'à ce jour

Maintenant, pour être parfaitement honnête, AngularJS est certainement la plus difficile de la langue à apprendre de toutes les options citées ci-dessus. Notre expérience est que vous devez investir une couple de jours pour vraiment apprendre comment le compilateur fonctionne et comment l'utiliser ou mettre en œuvre des services.

Aussi, tôt ou tard, vous devrez utiliser la programmation asynchrone techniques, et ceux-ci peuvent être un peu difficiles à maîtriser. Donc, il est généralement une bonne idée de prendre un coup d'oeil à contrôle de flux bibliothèques à l'origine construit pour Node.js et de les utiliser pour simplifier votre code. Mais vous aurez besoin de ces seulement après que vous avez maîtrisé les plus constructions de base de AngularJS.

2voto

Simon Boudrias Points 12696

Sans plus d'informations sur votre projet, c'est difficile à dire.

Angulaire est vraiment un full stack web application framework. Épine dorsale aider à organiser le code, mais est beaucoup plus cru (il n'moins Anguleux, mais ce que cela signifie, c'est plus simple). Mais comme l'épine Dorsale est plus simple, il est aussi plus facile pour un débutant de donner de mauvaises structure à son application.

Dans l'ensemble, aujourd'hui, j'irais pour la colonne vertébrale, car: bonne communauté, fonctionne bien avec AMD (à l'aide de la cale, mais quand même) et facile à construire pour une utilisation en production.

À l'avenir cependant, je pense Angulaire imposera de lui-même parce que: il a le soutien d'une bonne communauté et de Google, c'est plus complet. Et je suppose que son actuel défauts vont être résolus: la plus difficile à construire (minification causer quelques problèmes), et pas de support pour les processeurs AMD (ce dernier point est peut-être une préférence personnelle)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X