Je suis enti�rement d'accord avec toi sur le fait que jQuery fais les v�rifications n�cessaires en interne afin de ne pas faire des traitements sur des collections vides, ce qui constitue un gain de performances.
Mais je crois que tu as toi-m�me r�sum� mon point de vue avec ces deux phrases:
La subtilit� l� dedans se r�sume au "SI le plugin [...]". Si le d�veloppeur du plugin n'as pas conscience que jQuery peut retourner des objets vides, il ne fera pas cette v�rification lui-m�me. Et ce probl�me existe pour pas mal de plugins...
Et puis rien ne dis que demain �a ne sera pas toi ou moi qui �crira un plugin et qui devra prendre la responsabilit� de faire cette v�rification l�. En r�gle g�n�rale, si le d�veloppeur n'as pas l'habitude de faire cette v�rification dans son code "quotidien", il ne la fera pas lorsque qu'il �crira ce plugin en question.
Ensuite, je suis d'accord que 3 fonctions maximum appel�es comme �a pour rien car l'objet est vide ce n'est pas beaucoup. Mais lorsque tu �crit un code comme ci-dessous (qui est volontairement moche, mais qui pourrait tout � fait exister), ce ne sont plus que 3 appels de fonctions...
(PS: ce code rassemble tout ce qu'il ne faut PAS faire avec jQuery)
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 // exemple inventé d'un code de plugin pour faire un effet "voir plus" / "voir moins' jQuery.fn.cropText = function( options ) { var defaults = { duration: 100 }; var settings = jQuery.extend( defaults, options ); // appel a extend pas necessaire si l'objet est vide... jQuery('.cropTextLink', this).click(function() { if( jQuery(this).parent('.cropText').is(':visible') ) { jQuery(this).parent('.cropText').slideUp(settings.duration); } else { jQuery(this).parent('.cropText').slideDown(settings.duration); } }); jQuery( this ).slideUp(settings.duration); // pas mal de traitements sont fait dans les méthodes d'animations comme ça, ici ça ne sert a rien.. };
Pour rester dans le th�me du sujet, je dirais qu'il faut toujours �tre un minimum conscient de comment les choses se d�roulent en arri�re-plan, du moins pour les choses que l'on utilise souvent. jQuery et les autres librairies n'ont rien de magique, elles facilitent �norm�ment la vie du d�veloppeur mais on peut tr�s vite en faire une mauvaise utilisation...
Partager