Developpez.com

Télécharger gratuitement le magazine des développeurs, le bimestriel des développeurs avec une sélection des meilleurs tutoriels

jQuery 1.6.1 RC1 est disponible
Une API de plus en plus lourde et complexe ?

Le , par danielhagnoul, Rédacteur
jQuery 1.6.1 RC1 est disponible
Une API de plus en plus lourde et complexe ?

Pour utiliser cette version candidate, il suffit d'inclure un appel au serveur de code jQuery dans votre page web : <script charset="utf-8" src="http://code.jquery.com/jquery-1.6.1rc1.js"></script>.

Voir : Comment installer la bibliothèque jQuery ?

En passant directement de la version 1.5.2 à la 1.6.1 vous échapperez au problème de rétro compatibilité dû à la réécriture de la méthode attr() et à l'introduction de la méthode prop() dans la version 1.6 de jQuery.

On pourra donc continuer à utiliser attr() comme en 1.5.2, ou prendre la bonne habitude de distinguer entre le code HTML (attribut) et la propriété du DOM.

Source : http://blog.jquery.com/2011/05/10/jq...rc-1-released/

Opinion très personnelle :

En cédant aux récriminations des programmeurs qui devaient revoir leurs codes pour l'adapter à la version 1.6, et en collant une rustine sur la méthode attr(), je crois que l'équipe de développement montre qu'elle agit de plus en plus dans la précipitation.

Elle ne prend plus suffisamment de temps pour tester ses versions "beta" et "release candidate" et apporter les modifications demandées par les testeurs.

En surchargeant le code jQuery de "patchs" pour plaire à chacun, elle rend l'API jQuery de plus en plus complexe et de plus en plus lourd inutilement.


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de lochnar lochnar - Membre du Club http://www.developpez.com
le 11/05/2011 à 12:31
Le gros problème de jQuery c'est que tout le monde attend que ça fasse le café... et l'utilisent même lorsque l'intérêt est discutable:
Même s'il semble s'améliorer de version en version, le temps de réponse de jQuery pour réaliser des actions simple reste supérieur à une fonction javascript toute bête codée en 2min.

Par contre, il est clair que jQuery nous retire de belles épines du pied lorsqu'il s'agit de mettre des effets ou interactions un peu partout qui fonctionne généralement à l'identique quelque soit le navigateur
Avatar de barriton1 barriton1 - Nouveau Candidat au Club http://www.developpez.com
le 11/05/2011 à 14:30
Ca quand même c'est trop fort... Patché quelque chose qui vient de sortir 15 jours avant !... Pour revenir en arrière, du grand n'importe quoi !
Avatar de RapotOR RapotOR - Membre confirmé http://www.developpez.com
le 11/05/2011 à 17:08
Je crois que ce serait pas mal d'avoir jQuery sous forme de bundles.

On aurait un jQuery-Core avec les choses vraiment basiques.
Ensuite, on pourrait choisir d'inclure telle ou telle fonctionnalités (par groupes par exemple).

Toutes les fonctionnalités ne sont pas nécessaires à chaque projet comme l'indique lochnar. Je pense que ce serait une update puissante qui contenterais tout le monde: les personnes pointilleuses et les autres!
Avatar de Pilru Pilru - Membre éclairé http://www.developpez.com
le 12/05/2011 à 11:27
Citation Envoyé par barriton1  Voir le message
Ca quand même c'est trop fort... Patché quelque chose qui vient de sortir 15 jours avant !... Pour revenir en arrière, du grand n'importe quoi !

L'erreur a été commise en 1.6... Casser la compatibilité sur attr() brutalement, rendait le passage à cette version extrêmement difficile.

Maintenant, si l'équipe n'a pas dans l'idée de différer la modif de attr(), alors oui c'est idiot.

La 1.6 est arrivée trop vite...
Avatar de Pierrot0459 Pierrot0459 - Membre à l'essai http://www.developpez.com
le 18/05/2011 à 9:30
Citation Envoyé par lochnar  Voir le message
Le gros problème de jQuery c'est que tout le monde attend que ça fasse le café... et l'utilisent même lorsque l'intérêt est discutable:
Même s'il semble s'améliorer de version en version, le temps de réponse de jQuery pour réaliser des actions simple reste supérieur à une fonction javascript toute bête codée en 2min.

Par contre, il est clair que jQuery nous retire de belles épines du pied lorsqu'il s'agit de mettre des effets ou interactions un peu partout qui fonctionne généralement à l'identique quelque soit le navigateur

pas d'accord
JQUERY fait le café
le comble, c'est de penser que jquery n'est à que pour faire des effets
a++
Avatar de molokoloco molokoloco - Futur Membre du Club http://www.developpez.com
le 19/05/2011 à 15:17
Oui, jQuery veux contenter tout le monde, et donc il y aura toujours un petit bout de code qui ne servira pas.. mais pour 80Ko, soit un jpeg de 200*200 Pixels, on je va pas chipoter ^^.. ou alors on retourne à l'age du minitel

Sur le repository du dev jQuery, on peu retrouver indépendamment tous les modules intégré au "core" https://github.com/jquery/jquery

Sans parler du CDN Google pour jQuery http://code.google.com/intl/fr-FR/ap.../devguide.html
Avatar de danielhagnoul danielhagnoul - Rédacteur http://www.developpez.com
le 19/05/2011 à 21:53
Bonsoir

L'examen de la version non compressée et "gzipée" est plus parlant.

  • La version 1.6.1, sortie le 2011-05-12, pèse 229 Ko.
  • La version 1.4.2, sortie le 2010-02-19, pèse 155 Ko.
  • La version 1.3.2, sortie le 2009-01-20, pèse 120 Ko.


Entre la 1.3.2 et la 1.6.1, le nombre et l'importance des améliorations apportées comptent pour beaucoup dans le gain de poids. La nécessité de maintenir la compatibilité avec les anciennes versions et les navigateurs obsolètes a sans doute un faible impact, mais non nul.

Vu l'existence des modules, il est sans doute possible de se construire un jQuery à la carte, mais c'est la pire des solutions du point de vue de la compatibilité.

Les modules (extrait du make file, https://github.com/jquery/jquery/blob/master/Makefile) :
BASE_FILES = ${SRC_DIR}/core.js\
${SRC_DIR}/deferred.js\
${SRC_DIR}/support.js\
${SRC_DIR}/data.js\
${SRC_DIR}/queue.js\
${SRC_DIR}/attributes.js\
${SRC_DIR}/event.js\
${SRC_DIR}/selector.js\
${SRC_DIR}/traversing.js\
${SRC_DIR}/manipulation.js\
${SRC_DIR}/css.js\
${SRC_DIR}/ajax.js\
${SRC_DIR}/ajax/jsonp.js\
${SRC_DIR}/ajax/script.js\
${SRC_DIR}/ajax/xhr.js\
${SRC_DIR}/effects.js\
${SRC_DIR}/offset.js\
${SRC_DIR}/dimensions.js

MODULES = ${SRC_DIR}/intro.js\
${BASE_FILES}\
${SRC_DIR}/outro.js
À mon avis, la meilleure solution serait de sortir une version "HTML5-CSS3" destinée exclusivement aux navigateurs compatibles, après la sortie de IE10. Cette version ne tenant plus compte des navigateurs obsolètes et des anciennes versions de jQuery.
Avatar de youri89 youri89 - Membre habitué http://www.developpez.com
le 21/05/2011 à 14:58
Le gros avantage de Jquery par rapport à une fonction Javascript fait à la mimine, c'est qu'on crée sa fonction une bonne fois pour toute et JQuery s'occupe de la compatibilité une bonne fois pour toute.

On ne perd plus du temps à écrire les exceptions pour les différents navigateurs.
Avatar de kohsaka kohsaka - Membre confirmé http://www.developpez.com
le 30/05/2011 à 17:16
Je suis en train de réaliser un nouveau projet et je me demande quelle version je dois utiliser désormais ?

A mon sens, la bonne solution est d'utiliser la 1.6, qui fait "correctement les choses", mais j'aimerais votre avis sur la question car je ne sais pas s'ils vont continuer dans cette voie pour leurs prochaines releases ou s'ils comptent améliorer la rustine qu'ils ont fait dans la 1.6.1.

Ne pas prendre la 1.6.1 m’empêche aussi de bénéficier des quelques corrections de bugs.

(Désolé si je n'aurais pas dû poser cette question ici, mais ça ne justifiait pas l'ouverture d'un nouveau topic d'après moi)
Avatar de danielhagnoul danielhagnoul - Rédacteur http://www.developpez.com
le 30/05/2011 à 19:44
Bonsoir

Pour les tests et l'élaboration d'un nouveau site, vu la liste impressionnante des corrections de bogue apportées entre chaque version mineure, je conseille d'utiliser la dernière version stable en précisant toujours son numéro de version. Pas d'adoption automatique et silencieuse.

Pour les sites en production, comme il peut toujours y avoir des problèmes de rétrocompatibilité à la sortie d'une nouvelle branche (passage de la 1.X à la 1.Y) et que l'équipe de développement sort en général et dans un délai assez court deux versions de corrections (1.Y , 1.Y.1, 1.Y.2), j'attends quelques semaines après la sortie de la version 1.Y.2 pour tester le changement avant de l'adopter.

En bref, aujourd'hui, pour un nouveau site je recommande la 1.6.1 et pour un site en production je recommande d'attendre quelques semaines après la sortie de la 1.6.2.

Je vous recommande d'adopter la méthode prop() et les changements qu'elle apporte plutôt que de vous fier à une rustine qui semble (voir message http://www.developpez.net/forums/d10...-1-disponible/) donner un comportement différent selon les versions d'IE.
Offres d'emploi IT
Analyste d'exploitation H/F
Atos Technology Services - Poitou Charentes - Niort (79000)
Ingénieur études et développements .net (h/f)
MCNEXT - Ile de France - Paris (75002)
Développeur(se) php
SYS1 - Aquitaine - Martignas sur Jalles (33127)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil