web-dev-qa-db-fra.com

Comment AngularJS est-il différent de jQuery?

Je ne connais qu'une bibliothèque js et c'est jQuery .
Mais mes autres codeurs du groupe changent AngularJS en tant que bibliothèque par défaut dans le nouveau projet.

Je n'en sais rien. En quoi est-ce différent de jQuery?
J'ai déjà un ensemble de fonctions effectuées pour des tâches similaires dans jQuery. Puis-je continuer à utiliser jQuery avec AngularJS?

386
user825904
  1. Alors que Angular 1 était un framework, Angular 2 était une plate-forme . ( ref )

Angular2 offre aux développeurs certaines fonctionnalités qui vont au-delà de l’affichage des données à l’écran. Par exemple, utiliser l'outil angular2 cli peut vous aider à "pré-compiler" votre code et à générer le code javascript nécessaire ( arborescence ) pour réduire la taille du téléchargement à 35 Kich.

  1. DOM ombre angulaire2 émulé. ( ref )

Cela ouvre une porte pour le rendu du serveur qui peut résoudre le problème de référencement et fonctionne avec Nativescript, etc. qui ne fonctionnent pas sur les navigateurs.

  • Le site du document officiel

  • Keynote du premier jour à partir de ng-conf 2016

  • Liens de ressources Original: Fondamentalement, jQuery est un excellent outil pour vous permettre de manipuler et de contrôler les éléments DOM. Si vous vous concentrez uniquement sur les éléments DOM et sur l'absence de données CRUD, comme pour la création d'un site Web et non d'une application Web, jQuery est l'un des meilleurs outils. (Vous pouvez également utiliser AngularJS à cette fin.)

AngularJS est un framework . Il a les caractéristiques suivantes

  1. Liaison de données bidirectionnelle
  2. Modèle MVW (MVC-ish)
  3. Modèle
  4. Directive personnalisée (composants réutilisables, balisage personnalisé)
  5. REST-friendly
  6. Deep Linking (mettre en place un lien pour toute page dynamique)
  7. Validation du formulaire
  8. Communication serveur
  9. Localisation
  10. Injection de dépendance
  11. Environnement de test complet (les deux unités, e2e)

vérifier ceci présentation et ceci bonne introduction

N'oubliez pas de lire le fonctionnaire guide du développeur

Ou apprenez-le de ces géniaux tutoriels vidéo

Si vous souhaitez visionner plus de vidéos de tutoriel, consultez ce post, Collection des meilleurs 60+ tutoriels AngularJS .

Vous pouvez utiliser jQuery avec AngularJS sans problème.

En fait, AngularJS utilise jQuery lite, un outil formidable.

De FAQ

Est-ce que Angular utilise la bibliothèque jQuery?

Oui, Angular peut utiliser jQuery s'il est présent dans votre application lors du démarrage de l'application. Si jQuery n'est pas présent dans votre chemin de script, Angular revient à sa propre implémentation du sous-ensemble de jQuery que nous appelons jQLite.

Cependant, n'essayez pas d'utiliser jQuery pour modifier le DOM dans les contrôleurs AngularJS, faites-le dans vos directives.

Mise à jour:

Angular2 est libéré. Ici est une excellente liste de ressources pour débuter

413
maxisam

Je veux ajouter quelque chose à propos de AngularJS différence avec jQuery du point de vue du développeur.

Dans AngularJS, vous devez avoir une vue très structurée et une approche de ce que vous voulez accomplir. Il n’existe guère de méthode linéaire pour terminer une tâche, mais les échanges entre divers objets s’occupent des requêtes et des actions, ce qui est donc nécessaire, car angular est un = MVC-Based cadre. Cela nécessite également un plan au moins général de l'application finalisée, car le codage dépend beaucoup de la manière dont vous souhaitez que les interactions se déroulent.

jQuery est comme une poésie gratuite, vous écrivez des lignes et gardez des relations et un élan appropriés pour l'accomplissement de votre tâche.

Bien que, dans Angular JS, vous devriez suivre certaines règles tout en gardant l’élan et les relations propres, c’est peut-être plus un sonnet classique de Spencer (un célèbre poète classique) dont le poème est structurel et lié à de nombreuses règles .

Comparé à AngularJS, jQuery s'apparente davantage à une collection de codes et de fonctions (ce qui est, comme on l'a déjà mentionné, excellent pour la manipulation de DOM et la réalisation rapide d'effets), tandis qu'AngularJS est un véritable cadre qui donne au développeur la possibilité de créer un site Web d'entreprise. -application avec beaucoup de liaison de données et d'échange au sein d'un routage et d'une gestion superbement organisés.

De plus, AngularJS n'a pas de dépendance à jQuery pour mener à bien sa tâche. Il a deux fonctionnalités superbes qui ne se retrouvent pas dans jQuery:

1 - Angular JS vous apprend à coder et à atteindre un objectif et pas seulement à atteindre un objectif par n'importe quel moyen. Il convient de mentionner qu'AngularJS utilise pleinement le noyau et le cœur de Javascripts et vous permet d'incorporer dans votre application des techniques telles que l'injection de dépendance (ID). Pour travailler avec angularJS, vous devez (ou devez) apprendre des techniques de codage plus élevées avec Javascript.

2 - Angular JS est totalement indépendant pour gérer les directives et structurer votre application. vous pouvez alors simplement prétendre que jQuery peut faire la même chose (indépendance), mais en fait, AngularJS, comme plusieurs fois mentionné dans les lignes ci-dessus, jouit d'une indépendance optimale, du point de vue de la structure.

Une dernière remarque est qu'il n'y a pas de guerre de noms, car il est très dérangeant d'être partial ou subjectif. L’ampleur et la grandeur de jQuery ont été prouvées, mais leurs utilisations et leurs limites (quel que soit le framework ou le logiciel utilisé) relèvent de la discussion et des débats similaires qui s’y déroulent.

Mise à jour:

L'utilisation d'AngularJS est décisive car elle est coûteuse en termes de mise en œuvre, mais constitue une base solide pour l'expansion, la transformation et la maintenance futures de l'application. AngularJS est pour le nouveau monde du Web. Il est destiné aux applications de construction caractérisées par leur faible consommation de ressources (chargement des ressources nécessaires uniquement à partir du serveur), leur temps de réponse rapide, leur degré élevé de maintenabilité et d’extensibilité autour d’un système structuré.

39
Mostafa Talebi

AngularJS: AngularJS est destiné au développement d'applications Web lourdes. AngularJS peut utiliser jQuery s’il est présent dans l’application Web lors du démarrage de l’application. S'il n'est pas présent dans le chemin du script, AngularJS revient à sa propre implémentation du sous-ensemble de jQuery.

JQuery: jQuery est une petite bibliothèque JavaScript riche en fonctionnalités. Cela simplifie beaucoup les choses telles que la traversée et la manipulation de documents HTML, la gestion d'événements, l'animation et Ajax. jQuery simplifie beaucoup de choses complexes en JavaScript, comme les appels AJAX et la manipulation DOM.

Lisez plus de détails ici: angularjs-vs-jquery

27
kmario23

Je pense que this est un très bon graphique décrivant les différences en bref. Un rapide coup d'œil montre la plupart des différences.

enter image description here

Une chose que j'aimerais ajouter, c'est que, AngularJS peut être configuré pour suivre le MVVM modèle de conception tandis que jQuery ne suit aucun des modèles standard orientés objet.

19
Pritam Banerjee

Ils travaillent à différents niveaux.

Le moyen le plus simple de visualiser la différence du point de vue du débutant est le suivant: jQuery est essentiellement un résumé de JavaScript. nous concevons une page pour JavaScript, c'est à peu près comme nous le ferons pour jQuery . Commencez avec le DOM, puis créez une couche de comportement par dessus. Ce n'est pas le cas avec Angular.Js . Le processus commence vraiment à partir de zéro, le résultat final est donc la vue souhaitée.

Avec jQuery vous faites des manipulations de dom, avec Angular.Js vous créez des applications Web entières.


jQuery a été conçu pour résumer les différentes idiosyncracies des navigateurs et pour travailler avec le DOM sans avoir à ajouter de vérifications IE6, etc. Au fil du temps, elle a développé une API robuste et agréable, qui nous a permis de faire beaucoup de choses, mais elle est essentiellement destinée à traiter avec le DOM, à rechercher des éléments, à modifier l'interface utilisateur, etc. Pensez-y comme travaillant directement avec des écrous et des boulons.

Angular.Js a été construit en tant que couche au-dessus de jQuery , pour ajouter MVC concepts à l'ingénierie frontale. Au lieu de vous donner des API pour travailler avec DOM, Angular.Js vous donne des composants personnalisés de liaison de données, de templates, (similaire à jQuery UI , mais déclaratif au lieu de se déclencher via JS ) et beaucoup plus. Pensez-y comme si vous travailliez à un niveau supérieur, avec des composants que vous pouvez relier ensemble, plutôt que directement au niveau des écrous et des boulons.

En outre , Angular.Js vous donne des structures et des concepts qui s'appliquent à divers projets, tels que des contrôleurs, des services et des directives. jQuery lui-même peut être utilisé de plusieurs façons (par milliards) pour faire la même chose. Heureusement, c'est beaucoup moins avec Angular.Js , ce qui facilite l'entrée et la sortie de projets. Il offre à plusieurs personnes un moyen sain de contribuer au même projet sans avoir à réapprendre un système à partir de zéro.


Une courte comparaison peut être ceci -

jQuery

  • Peut être facilement utilisé par ceux qui ont une bonne connaissance des sélecteurs CSS
  • C'est une bibliothèque utilisée pour les manipulations DOM
  • N'a rien à voir avec les modèles
  • Manipuler facilement le contenu d'une page Web
  • Appliquer des styles pour rendre l'interface utilisateur plus attrayante
  • Traversée DOM facile
  • Effets et animation
  • Facile à faire AJAX appels et
  • Facilité d'utilisation des utilitaires
  • ne pas avoir une fonctionnalité de liaison bidirectionnelle
  • devient complexe et difficile à maintenir lorsque la taille d'un projet augmente
  • Parfois, vous devez écrire plus de code pour obtenir la même fonctionnalité que dans Angular.Js

Angular.Js

  • C'est un framework MVVM
  • Utilisé pour créer des applications SPA (page unique)
  • Il possède des fonctionnalités clés telles que le routage, les directives, la liaison de données bidirectionnelle, les modèles, l’injection de dépendance, les tests unitaires, etc.
  • est modulaire
  • Maintenable lorsque la taille du projet augmente
  • est rapide
  • Liaison de données bidirectionnelle REST conviviale, basée sur le modèle MVC
  • Lien profond
  • Templating
  • Formulaire de validation
  • Injection de dépendance
  • Localisation
  • Environnement de test complet
  • Communication serveur

Et beaucoup plus

enter image description here

Pense que cela aide.

Plus peut être trouvé -

10
Abrar Jahin

Jquery: -

jQuery is a lightweight and feature-rich JavaScript Library that helps web developers
by simplifying the usage of client-side scripting for web applications using JavaScript.
It extensively simplifies using JavaScript on a website and it’s lightweight as well as fast.

So, using jQuery, we can:

easily manipulate the contents of a webpage
apply styles to make UI more attractive
easy DOM traversal
effects and animation
simple to make AJAX calls and
utilities and much more… 

AngularJS: -

AngularJS is a product by none other the Search Engine Giant Google and it’s an open source
MVC-based framework(considered to be the best and only next generation framework). AngularJS
is a great tool for building highly rich client-side web applications.

As being a framework, it dictates us to follow some rules and a structured approach. It’s
not just a JavaScript library but a framework that is perfectly designed (framework tools
are designed to work together in a truly interconnected way).

In comparison of features jQuery Vs AngularJS, AngularJS simply offers more features:

Two-Way data binding
REST friendly
MVC-based Pattern
Deep Linking
Template
Form Validation
Dependency Injection
Localization
Full Testing Environment
Server Communication
3
user6788628