Partage
  • Partager sur Facebook
  • Partager sur Twitter

jquery en poo?

Sujet résolu
    14 janvier 2011 à 20:29:45

    salut, pouvez-vous m'éclairer :

    javascript est un langage orienté objet, mais la librairie jquery fonctionne-t-elle aussi de la même façon (en poo) ?
    • Partager sur Facebook
    • Partager sur Twitter
      14 janvier 2011 à 20:32:20

      Je comprend pas ta question..

      jQuery est une bibliothèque JavaScript, faite en JavaScript, donc à partir de là, elle est objet elle aussi..
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        14 janvier 2011 à 20:40:49

        Citation : Tiller

        Je comprend pas ta question..

        jQuery est une bibliothèque JavaScript, faite en JavaScript, donc à partir de là, elle est objet elle aussi..


        Oui mais non, sa question a un sens.

        Quand tu développes en javascript t'es absolument pas obligé de faire de l'objet. Tu peux faire du fonctionnel.

        Pour répondre à la question, jQuery est une bibliothèque orientée-objet. Utiliser jQuery revient donc à travailler avec des instances de classes de bibliothèque jQuery.
        • Partager sur Facebook
        • Partager sur Twitter
          14 janvier 2011 à 22:34:55

          Ok merci :) et alors autre question : la compatibilité avec les navigateurs : jquery permet de ne plus se préoccuper du navigateur (internet explorer, Safari, etc.) ?

          donc vous qui utilisez javascript, vous utilisez souvent, voire très souvent, voire tout le temps :) jquery? ou vous faîtes des conditions pour internet explorer et les autres navigateus dans votre code javascript?
          • Partager sur Facebook
          • Partager sur Twitter
            14 janvier 2011 à 22:47:15

            @Victor: Théoriquement plus ou moins tout n'est qu'objet. Une simple fonction est un objet, un tableau est un objet, etc.

            @Erroll: Il ne faut pas pousser à l’extrême non plus, un code bien fait est compatible partout. Il y a quelques différences sur certains points précis, mais que l'on ne rencontre pas toujours.
            Et pour la question, en 4-5 ans de développement JavaScript, je n'ai jamais utilisé jQuery.
            • Partager sur Facebook
            • Partager sur Twitter
              15 janvier 2011 à 0:23:09

              @Errol : Toutes les librairies JavaScript (car oui, jQuery n'est pas la seule et unique lib JS... bien loin de là. On peut citer Mootools, Prototype, YUI, ExtJS et bien d'autres...) permettent de ne plus se préoccuper du navigateur... puisque c'est là l'un des gros problèmes du JavaScript : sa compatibilité.


              Mais utiliser une librairie uniquement pour parer aux problèmes de compatibilité, c'est ridicule. Autant se créer deux ou trois fonctions pour palier à ça (une pour la gestion des événements et une pour Ajax, par exemple).
              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                15 janvier 2011 à 1:40:12

                Citation : Erroll

                Ok merci :) et alors autre question : la compatibilité avec les navigateurs : jquery permet de ne plus se préoccuper du navigateur (internet explorer, Safari, etc.) ?


                Exact! Et c'est un grand soulagement pour le programmeur!

                Citation : Tiller

                @Victor: Théoriquement plus ou moins tout n'est qu'objet. Une simple fonction est un objet, un tableau est un objet, etc.


                Non, c'est faux.

                Théoriquement, un objet n'est objet que lorsqu'il est une classe instanciée...

                Or quand je programme en JS fonctionnelle parce que j'en ai marre de faire de l'objet, rien n'est objet.
                Ma fonction n'est que fonction, ma variable n'est que variable, etc.

                La POO est un paradigme de programmation demandant plus qu'une simple déclaration de variable pour être POO, hein...
                • Partager sur Facebook
                • Partager sur Twitter
                  15 janvier 2011 à 2:36:44

                  ok :D
                  comment vous choisissez votre librairie JS? en fonction de quoi?
                  quel est votre moyen pour être sûr que la version du code est compatible ou pas avec tel navigateur? mot-clés sur google? vous les connaissez par coeur ;) ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    15 janvier 2011 à 11:02:11

                    Le choix d'une librairie, ça peut être quelque chose de personnel. Tu peux aller voir leurs sites, essayer celles qui te font envie, et voir à l'utilisation.

                    Mais il peut être intéressant de choisir également en fonction de tes besoins. Certaines librairies sont plus spécialisées dans tel ou tel domaine.

                    jQuery est appréciée par les débutants pour sa syntaxe particulière... qui sort un peu de la syntaxe habituelle du JS. Elle est aussi très axée sur la manipulation du DOM et dispose de méthodes d'animations puissantes.

                    EtxJS est quant à elle plutôt destinée à la réalisation d'applications web. Plus difficile à prendre en main, mais bien plus complète et "professionnelle" que jQuery.

                    Et on trouve aussi des librairies spécialisées qui ne vont s'occuper que d'un petit besoin. Une librairie de géométrie avec gestion des vecteurs, des plans, etc ; une librairie de dessin avec Canvas (et éventuellement une compatibilité pour IE)...

                    (Je ne vais pas faire la liste de toutes les librairies, on en finirait pas ^^ )


                    Comme je l'ai dit précédemment, toutes les librairies (à ma connaissance) résolvent les problèmes d'incompatibilités entre les navigateurs.


                    Pour terminer, voici une liste de librairies avec leur site web :

                    • jQuery
                      Simplifie la syntaxe du JS. Spécialisée dans le DOM, l'animation, l'ajax et la gestion des événements.
                    • jQuery UI
                      Peut s'ajouter à jQuery et propose une série de Widgets (Drag'n'drop, Pickdater, Dialog boxes)
                    • Mootools
                      Librairie généraliste. Peut être associée à Mootools More pour ajouter quelques Widgets.
                    • Prototype
                      Permet notamment d'utiliser le concept OO des Classes. Utile pour les développeurs habitués à l'héritage classique.
                    • Scriptaculous
                      Basé sur Prototype, Scriptaculous ajoute des fonctionnalités d'animation, drag'n'drop, ...
                    • YUI
                      Librairie développée par Yahoo! designée pour les professionnels, pour la réalisation d'applications web.
                    • ExtJS
                      Librairie pour réaliser des applications web.
                    • Dojo
                      Propose entre autre l'animation et la manipulation du DOM, inclut une série de Widgets (Dijit) et notamment un joli set de graphiques (Camemberts, Histogrammes...)
                    • Spry
                      Librairie Ajax développée par Adobe. Permet notamment d'assurer la compatibilité dans un environnement Adobe Air.
                    • UIZE
                      Librairie généraliste avec gestion des animations, des événements, ... Propose une simplification du système d'héritage en JS.
                    • Archetype
                      Utilise un système de gestion des dépendances, se base apparemment sur le schéma MVC et simplifie l'utilisation de this.
                    • xui
                      Petite librairie avec une syntaxe qui semble similaire à celle de jQuery (mécanisme de chaining). Gère le DOM, les événements, les animations, Ajax, ... Propose des fonctionnalités pour la gestion des terminaux mobiles.
                    • midori
                      midori gère Ajax, les sélecteurs CSS, les Tabs (onglets), le Drag'n'drop, Autocomplete, ...
                    • Raphaël
                      Librairie graphique, utilisant le SVG et le VML (pour IE).
                    • Liste non exhaustive...
                    • Partager sur Facebook
                    • Partager sur Twitter
                      15 janvier 2011 à 16:08:52

                      Merci Golmote de tes infos! c'est vraiment sympa!

                      alors ext.js c'est payant? sur le site de sensa on peut l'acheter avec le "support" etc pour 500€ voire plus... tu connais cette librairie? c'est en effet ce prix là?? j'ai entendu parler de sensa pour les mobiles, ça m'intéresserait...

                      sinon donc j'aimerais utiliser une librairie pour les mobiles, il y a jquery mobile je crois? mais j'ai entendu pas mal de critiques sur la façon d'écrire le code avec jquery, pas aussi "logique" que mootools par exemple. alors j'hésite un peu avec jquery... si tu as des retours concernant jquery? à conseiller?

                      et enfin, ça sera ma dernière question dans ce sujet : connais-tu davantage de tutos pour pratiquer le JS ? le tuto du site du zéro était super, un peu dans ce style là donc...
                      • Partager sur Facebook
                      • Partager sur Twitter
                        15 janvier 2011 à 16:20:48

                        ExtJS est payant si tu veux une license Commercial. Pour l'OpenSource, il est gratuit.

                        Regarde en bas du site de xui, on y trouve une liste de lib pour les mobiles :
                        http://xuijs.com/
                        • Partager sur Facebook
                        • Partager sur Twitter
                          15 janvier 2011 à 23:31:31

                          ok super merci ;)
                          et toi, t'utilises quoi comme librairie?
                          • Partager sur Facebook
                          • Partager sur Twitter
                            15 janvier 2011 à 23:52:51

                            Aucune ;)

                            Pense à mettre ton sujet en résolu à l'aide du bouton approprié ;)
                            • Partager sur Facebook
                            • Partager sur Twitter
                              16 janvier 2011 à 1:21:03

                              et as -tu un exemple de ce que tu as déjà fait avec javascript? simple curiosité ;)
                              • Partager sur Facebook
                              • Partager sur Twitter
                                16 janvier 2011 à 1:42:10

                                Citation : victor

                                Non, c'est faux.

                                Théoriquement, un objet n'est objet que lorsqu'il est une classe instanciée...


                                Et donc tous les langages orientés objets class-less ne sont en réalité pas orienté objet ?
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  16 janvier 2011 à 9:51:25

                                  Citation : Erroll

                                  et as -tu un exemple de ce que tu as déjà fait avec javascript? simple curiosité ;)



                                  <= Clique sur le champignon.
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  Anonyme
                                    16 janvier 2011 à 13:06:29

                                    Citation : `Haku

                                    Citation : victor

                                    Non, c'est faux.

                                    Théoriquement, un objet n'est objet que lorsqu'il est une classe instanciée...


                                    Et donc tous les langages orientés objets class-less ne sont en réalité pas orienté objet ?



                                    J'ai dit que JS n'était en réalité pas orienté objet? o_O

                                    JS permet de faire de l'objet, mais JS n'est pas objet. L'orienté objet c'est un paradigme, le javascript est un langage. En javascript tout n'est pas objet contrairement à d'autres langages.

                                    Le JS n'est pas class-less, ok le statement 'class' n'existe pas mais peu importe, c'est qu'une question de syntaxe.

                                    Je considère quand même que tant que tant que t'utilises pas 'new', tu n'as pas d'objet.
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      16 janvier 2011 à 13:36:55

                                      Si, en JS, tout est objet (à l'exception des trois types primitifs... mais qui ont quand même des wrappers objets)

                                      Le JS est class-less. Les objets héritent des autres objets. Il n'y a pas de classe.

                                      Et on peut obtenir des objets dans utiliser new :

                                      var arr = [];
                                      // arr est un Array
                                      
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        16 janvier 2011 à 13:37:59

                                        Citation : victor

                                        J'ai dit que JS n'était en réalité pas orienté objet? o_O


                                        Non, mais je n'ai pas dit que tu avais dis cela. Par contre dire qu'un objet n'est objet que s'il est instancié depuis une classe, c'est juste faux.

                                        Citation : victor

                                        En javascript tout n'est pas objet contrairement à d'autres langages.


                                        Je ne m'y connais pas particulièrement en Javascript, mais pour autant que je sache, tout ou presque y est effectivement objet. J'imagine que les fins connaisseurs du langage apporteront des précisions si nécessaire.

                                        Citation : victor

                                        Le JS n'est pas class-less, ok le statement 'class' n'existe pas mais peu importe, c'est qu'une question de syntaxe.


                                        Si, le Javascript est class-less, tout comme le sont Io, Self et bien d'autres. Il n'y a pas besoin de classe pour faire de l'objet, et la distinction class-based/prototype-based n'existe pas que pour faire joli, il y a de réelles différences autres que la syntaxe.

                                        Citation : victor

                                        Je considère quand même que tant que tant que t'utilises pas 'new', tu n'as pas d'objet.


                                        Libre à toi de considérer cela, ça n'en reste pas moins faux. Avec Io, Self ou autre, tu copies un objet existant, qui deviendra le prototype, pour en créer un puis tu lui ajoutes les slots qui vont bien.
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                        Anonyme
                                          16 janvier 2011 à 16:42:13

                                          Je m'incline, merci pour les précisions! :)
                                          • Partager sur Facebook
                                          • Partager sur Twitter

                                          jquery en poo?

                                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                          • Editeur
                                          • Markdown