CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Comment réutiliser du code javascript/jquery ?

Messala
Messala
Niveau 11
27 août 2015 à 20:38:04

Bonjour,

Je cherche depuis plusieurs mois maintenant un moyen d'utiliser javascript de maniere orienté objet comme on peut le faire avec PHP (Classes, heritages, constructeurs, instanciation etc.)

Je recherche un moyen simple de pouvoir creer mon propre framework javascript et pouvoir le réutiliser de maniere flexible dans plusieurs projet différents. J'ai utilisé Jquery ou encore angularJS, mais je ne trouve pas ce dont je recherche car ces langages je les trouve assez bavards concernant le jquery, et angularJS je le trouve trop rigide bien que puissant.

Comment faire pour utiliser javascript en Orienté Objet afin de créer des classes dans lesquels je pourrais y mettre toutes sortes de fonctions et les instancier dans mon script ? Comment on met en place l'autoload le systeme d'autoload comme en php ? Si possible ?

Merci de votre aide

Caletlog
Caletlog
Niveau 10
27 août 2015 à 21:03:44

Pour le côté objet, c'est pas super possible. Le JS propose un système objet relativement sommaire qui peut t'aider à organiser ton code en entités, mais ça sera pas aussi poussé que des langages définitivement objets. Certains frameworks peuvent t'aider à ce niveau-là, notamment ReactJS, qui vise à compartimenter ton code en composants réutilisables et polymorphiques. La philosophie des webcomponents pourrait aussi t'intéresser.

Pour le principe de l'autoload, c'est un brin délicat également, mais on y arrive. L'utilisation de solutions comme requireJS, webpack ou browserify peut par contre t'encourager à séparer ton code en modules, et te permettre de les appeler, bien que manuellement, beaucoup plus facilement et de façon transparente, à la manière des "import" de langages comme Python, Ruby ou Haskell.

Enfin, une alternative intéressante aux frameworks utilitaires type jQuery est lodash/underscore. C'est une bibliothèque utilitaire qui "connaît sa place" (c'est pas avec lodash que tu te retrouveras avec du code spaghetti de sélecteurs jQuery), et propose des solutions efficientes à des problèmes classiques, tout en "compensant" le minimalisme du javascript en permettant d'utiliser des simulacres de structures de données plus poussées que celles fournies de base.

Messala
Messala
Niveau 11
27 août 2015 à 22:18:20

Merci pour ta reponse. Parmis tout ce que tu viens de dire j'ai envie de m'attarder un peu sur reactJS.

Comme je l'ai dit, j'utilise angularJS depuis quelques temps mais je suis un brin decu car il ne repond definitivement pas aux esperances que j'avais placé en lui avant de m'y coller.

Que peux tu me dire au sujet de reactJS et surtout ses avantages par rapport a angularJS car je n'arrive pas a cerner le truc.

Ce que je cherche avant tout c'est un framework qui va me permettre de manipuler facilement le dom ainsi que de generer tres facilement du contenu HTML single page. Le tout d'une maniere totalement réutilisable dans d'autres applications, de sorte a ce que je n'ai plus qu'a editer que le HTML dans le futur sans toucher au code du controller.

Existe-il egalement une alternative a l'ajax pour interagir avec le serveur , en complement de reactJS ?

Darkandgel
Darkandgel
Niveau 10
27 août 2015 à 22:27:30

Tu peux regarder du coté de backbone.js
Il propose d'organiser le code façon MVC, et a comme dépendance underscore;js, qui est un framework de templating.
Pour communiquer avec le serveur, il utiliser une API RESTful (facile a mettre en place avec SlimPHP)

Par contre, réutiliser des morceaux de code d'un site a l'autre... je vois assez mal ce que tu voudrais réutiliser...

Message édité le 27 août 2015 à 22:28:45 par Darkandgel
Caletlog
Caletlog
Niveau 10
27 août 2015 à 23:06:00

La réutilisation de code d'un projet à l'autre est tout à fait possible, et c'est le concept derrière les composants web, type Polymer ou React. Après c'est évidemment la théorie, en pratique c'est toujours un peu plus compliqué. Néanmoins, c'est ce que ces frameworks permettent initialement de faire. Le but est d'avoir des entités les plus génériques possibles, pour que seule leur configuration ait à être changée. Par contre, ça ne se prête évidemment pas à tous les types d'utilisation du javascript. Il semble plus logique et facile de réutiliser un système de chat, des loaders ou des formulaires de connexion AJAX, que des bouts de code ultra spécifiques à un projet en particulier.

En alternative à l'AJAX pour le serveur, il y a les websockets, mais ça répond à un ensemble de problèmes très particuliers (communication temps réel dans les deux sens client <-> serveur), c'est pas un remplacement pour toutes les situations.

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment