IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

JavaScript devient le langage de référence pour GNOME


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut
    Javascript, référence : Berk

    Etant ingé dev je l'utilise souvent dans les webapp que je produit ou les site mobile. Ben j'ai toujours trouvé ca lourd et verbeux au possible. C'est pas pour rien que les framework Javascript tel que jquery qui simplifie grandement les chose existe.

    Parce que faire du javascript from scratch c'est

    Moi j'essaye d'éviter ca le plus possible. Parce que quand tu voit que la moindre selection d'un champs/div/etc... tu doit te taper un document.getElementById(<id_element>) ca fini vite par gonflé quand tu doit en gérer plein ou faire des calcul automatique. (j'ai eu à faire une sorte de mini calculette en tant que web-app sans possibilité d'utiliser de framework en JS et ca m'avait bien bien gonflé.

    document.getElementById(<id_element>) c'est pas du javascript c'est l'identification d'un element dans l'arbre du document objet model

    et pour rappel le dom se place entre le html et javascript, il permet la dynamisation d'une page web
    Dernière modification par Invité ; 06/02/2013 à 21h26.

  2. #2
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2010
    Messages : 657
    Par défaut
    Vous pouvez tous remercier Microsoft(surtout) et Yahoo , sans leur conneries de 2008 et sans le "défilement" de Mozilla , on aura pu au moins avoir ceci :

    http://www.ecmascript.org/es4/spec/lib-march-2008.html

    que vous pouvez tester(partiellement) avec seamonkey :

    http://ftp.mozilla.org/pub/mozilla.o...3-04-01-trunk/

    Si tu crois encore que l'orienté objet est le paradigme le plus approprié pour toutes situations, et que les autres paradigmes, c'est une régression dans le passé, c'est sûr qu'on est pas près d'avoir l'informatique moderne.
    Dans le cadre d'une application graphique(puisqu'on parle de GNOME),je vois mal quel paradigme est plus approprié. Maintenant javascript permet la POO , comme la programmation fonctionnelle. Cela ne veut pas dire que le langage est bien conçu ou que sa syntaxe favorise la création d'objets réutilisables , l'héritage , l'encapsulation , le polymorphisme ... Javascript est un accident , un peu comme PHP, la dette technologique de javascript aujourd'hui est trop importante pour que ce langage disparaisse ( un peu comme COBOL )

  3. #3
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    Citation Envoyé par Thorna Voir le message
    voici qu'on porte aux nues un truc qui ne ressemble pas du tout, ni même de très très loin, à un langage objet.
    Malheureusement, Javascript est l'un des seuls (voire le seul) langage populaire actuel n'adoptant pas le modèle objet.
    Qu'est-ce que c'est que ces bêtises ? en Javascript tout est objet ou référence à un objet..

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if(typeof (function(){}).prototype === "object"
    && typeof {} === "object"
    && typeof [1,2,3] === "object"
    && typeof new String("hello world") === "object"
    && typeof new Number(42) === "object"
    ){ 
    alert("Le Javascript est un langage objet !"); 
    }

    Les classes ne sont pas la seule forme de POO qui existe, même si c'est celle qu'on nous fait bouffer à l'école. Un peu de lecture : http://fr.wikipedia.org/wiki/Program...%A9e_prototype

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2010
    Messages : 657
    Par défaut
    Qu'est-ce que c'est que ces bêtises ? en Javascript tout est objet ou référence à un objet..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    typeof new Number("je suis une chaine") === "object"
    Ton code ne démontre absolument rien, puisque tu renvoies le type du constructeur qui renverra toujours object , et pas le type de la chaine ni du nombre(string ou number en l'occurence ).

  5. #5
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    Number est le constructeur, new Number(5) renvoie l'objet construit.
    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    (new Number(42)).constructor === Number

    Et si mon code ne te convainc pas que le JS est un langage objet, peut-être qu'ouvrir un bouquin ou faire une recherche Google le fera...

    Un extrait du site web de Douglas Crockford :
    JavaScript est-il orienté objet ?Il a des objets qui peuvent contenir des données et des méthodes qui agissent sur ces données. Les objets peuvent contenir d’autres objets. Il n’a pas de classes, mais il a des constructeurs qui font ce que les classes font, notamment en agissant comme des conteneurs de variables de classe et de méthodes. Il n’y a pas d’héritage orienté classe, mais il y a un héritage orienté prototype.
    Les deux principales façons de construire des systèmes objets sont par héritage (est-un) et par agrégation (a-un). JavaScript fait les deux, mais sa nature dynamique lui permet d’exceller dans l’agrégation.
    Certains prétendent que JavaScript n’est pas véritablement orienté objet, car il ne permet pas de cacher l’information. Autrement dit, les objets ne peuvent pas avoir de variables privées ou de méthodes privées: tous les membres sont publics.
    Mais il s’avère que les objets JavaScript peuvent avoir des variables privées et des méthodes privées.(Cliquez ici maintenant pour savoir comment faire.) Bien sûr, peu de gens comprennent cela parce que JavaScript est le langage le plus incompris au monde.
    Certains prétendent que JavaScript n’est pas véritablement orienté objet, car il ne prévoit pas l’héritage. Mais il s’avère que JavaScript supporte non seulement l’héritage classique, mais aussi d’autres modèles de réutilisation du code.
    Source: http://javascript.crockford.com/javascript.html

  6. #6
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    657
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2010
    Messages : 657
    Par défaut
    Et si mon code ne te convainc pas que le JS est un langage objet, peut-être qu'ouvrir un bouquin ou faire une recherche Google le fera...
    Un langage objet cela ne veut rien dire , la POO n'a rien à voir avec les specs d'un langage. Tu peux pratiquement faire de la POO avec n'importe quoi qui a des tableau , des pointeurs et des fonctions. Un "objet" c'est juste une structure contenant des états et des méthodes. Utiliser des objets ne veut pas dire faire de la POO , comme utiliser une fonction ne veut pas dire faire de la programmation fonctionnelle.


    Un extrait du site web de Douglas Crockford :
    Ce sont des gens comme Crockford(yahoo à l'époque) qui ont fait capoter ES4 , donc son avis me fait une belle ...

  7. #7
    Membre chevronné

    Homme Profil pro
    Appui fonctionnel senior
    Inscrit en
    Juin 2007
    Messages
    461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Appui fonctionnel senior
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 461
    Par défaut
    Citation Envoyé par SylvainPV Voir le message
    Javascript tout est objet ou référence à un objet..
    Citation Envoyé par Uther Voir le message
    On peut difficilement nier que JavaScript est un langage orienté objet.
    En effet, je suis allé un peu vite en besogne. Je voulais dire que Javascript n'était pas un langage orienté objet "classique", à classes donc (classique car enseigné partout). Sinon, je suis entièrement d'accord avec le point de vue d'Uther.

    Citation Envoyé par camus3 Voir le message
    Vous pouvez tous remercier Microsoft(surtout) et Yahoo , sans leur conneries de 2008 et sans le "défilement" de Mozilla , on aura pu au moins avoir ceci :

    http://www.ecmascript.org/es4/spec/lib-march-2008.html
    C'est marrant car, d'après ce que j'ai pu voir en lisant en diagonal ce document, Microsoft a repris pas mal d'idées pour les insérer dans TypeScript

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 31
    Par défaut
    Citation Envoyé par Thorna Voir le message
    En attendant, j'aimerais bien qu'on me cite un exemple de domaine dans lequel un langage objet n'est pas le bienvenu.
    La programmation système?

  9. #9
    Membre actif
    Profil pro
    Électro-mécano-informaticien à ses heures
    Inscrit en
    Août 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Électro-mécano-informaticien à ses heures

    Informations forums :
    Inscription : Août 2010
    Messages : 95
    Par défaut
    haha.... tout ceci me fais rire un brin. JavaScript est un langage de script, pour faire cours et très simple, on est d'accord?! Mais un langage script haut niveau, car la définition et l'appel des méthodes sont très descriptives, donc facilement compréhensible pour un cerveau humain. De plus, sa forme d'utilisation (ressemblance avec) est analogue au JAVA. Il y a beaucoup de différence, je sais et c'est pour ça que c'est un langage à lui seul, mais il y a tout de même des ressemblance! Pourquoi ne pas simplement se tourner vers le JAVA? La machine est déjà construite, ça éviterait de travailler sur un interpréteur "maison" (avantages ici bien-sûr), améliorer plutôt les machines JAVA déjà existantes et donnerait aux développeur GNOME plus de possibilitées, de "pouvoir" sur la machine. Et pourquoi pas un package complet GNOME pour l'open-jdk ou sun-jdk?

  10. #10
    Membre très actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2006
    Messages : 380
    Par défaut
    Citation Envoyé par tiloup367 Voir le message
    haha.... tout ceci me fais rire un brin. JavaScript est un langage de script, pour faire cours et très simple, on est d'accord?! Mais un langage script haut niveau, car la définition et l'appel des méthodes sont très descriptives, donc facilement compréhensible pour un cerveau humain. De plus, sa forme d'utilisation (ressemblance avec) est analogue au JAVA. Il y a beaucoup de différence, je sais et c'est pour ça que c'est un langage à lui seul, mais il y a tout de même des ressemblance! Pourquoi ne pas simplement se tourner vers le JAVA? La machine est déjà construite, ça éviterait de travailler sur un interpréteur "maison" (avantages ici bien-sûr), améliorer plutôt les machines JAVA déjà existantes et donnerait aux développeur GNOME plus de possibilitées, de "pouvoir" sur la machine. Et pourquoi pas un package complet GNOME pour l'open-jdk ou sun-jdk?
    Désolé mais javascript n'a de ressemblance avec java que le nom

  11. #11
    Expert éminent

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Par défaut
    Le JavaScript s'est inspiré de plusieurs langages, notamment du Java. Les ressemblances sont cependant faibles.

  12. #12
    Membre très actif

    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 506
    Par défaut Javascript
    Le javascript est très bien.
    Sauf... sa manière de délimiter les instructions ou pas avec les fins de lignes.
    Ca s'est du pourri de chez pourri.
    Pour le reste, en mode strict on peut très bien n'utiliser que les aspects propres.
    Fred

  13. #13
    Membre actif
    Avatar de heinquoi
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2003
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 85
    Par défaut vitesse d'execution
    Je connais vraiment pas la problématique.
    Cependant je m'interroge sur le temps d’exécution. Dans ma representation le JS est lent, voir très lent du fait qu'il est interpréter notamment. Faudra-t-il un octo-processeur survitaminer pour faire un simple jeu de console ?

  14. #14
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 680
    Par défaut
    Citation Envoyé par heinquoi Voir le message
    Je connais vraiment pas la problématique.
    Cependant je m'interroge sur le temps d’exécution. Dans ma representation le JS est lent, voir très lent du fait qu'il est interpréter notamment. Faudra-t-il un octo-processeur survitaminer pour faire un simple jeu de console ?
    Le JS est certes globalement plus lent que le C, mais maintenant que les moteurs JS récent font du JIT, la différence n'est plus aussi énorme. Pour scripter les action d'un GUI, c'est très largement suffisant.

    Quant à faire un jeu complet, c'est faisable avec des performance certes moindres, mais ce n'est pas le sujet ici.

  15. #15
    Membre actif
    Profil pro
    Électro-mécano-informaticien à ses heures
    Inscrit en
    Août 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Électro-mécano-informaticien à ses heures

    Informations forums :
    Inscription : Août 2010
    Messages : 95
    Par défaut
    Pas la pour m'obstiner, mais j'avais bien stipulé : Il y a beaucoup de différence. Donc s'il y a beaucoup de différence, il y a quelque ressemblance. Comme a dit vermine : JavasScript s'est inspiré de beaucoup de langage dont JAVA. Il a des ressemblances faibles. Par expérience, je peux dire qu'en abordant l'un des deux en premiers, il est plus facile de comprendre le deuxième(JavaScript <--> JAVA).

  16. #16
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 680
    Par défaut
    Le seul vrai point commun c'est la syntaxe qui s'inspire dans les deux cas du C.
    Mais vu que, le C à 40 ans et que les langages qui se sont inspirés de sa syntaxe, il y en a des dizaines, parler de ressemblance Java/Javascript, c'est un peu prendre le problème à l'envers.

    La syntaxe mise à part, je dirais, au contraire, que ces deux langages n'ont vraiment rien en commun : quasiment toutes les mécaniques fondamentales sont différentes. Essayer de faire des rapprochement entre les deux est surtout source de confusion. Autant les comparer au C.

    Le Javascript devait à la base s'appeler Livescript. S'il s'est retrouvé affublé de ce nom, c'est seulement à cause des gens du marketing de chez Netscape, qui ont voulu bénéficier du "hype" qu'avait Java à l'époque.

  17. #17
    Membre très actif
    Profil pro
    Développeur indépendant
    Inscrit en
    Août 2004
    Messages
    374
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : Développeur indépendant
    Secteur : Transports

    Informations forums :
    Inscription : Août 2004
    Messages : 374
    Par défaut pourquoi pas
    certes, javascript permet de faire des choses, mais de la a parler de langage pour applications.?
    et l'accés materiel, l'interface avec les peripheriques.?
    javascript permet de faire des choses interressantes, mais une vrie appli, ca communique, javascript a IO lib) , mais ca ecrit des infos sur le disque, ca peut le manipuler, ca communique avec des peripheriques.. et je vois mal javascript gerer ca sans devenir un espece de monstre.

    alors ils rajoutent des bibliotheques spécifiques, des plugs ins..
    ca va devenir une belle salade tout ca.
    moi j'ai besoin de maitriser les impressions, depuis l'appli, comment on poura faire ca en javascript.?
    comment aller modifier le comportement du systéme on faire un editeur de proriétés systéme à partir de javascript.
    faut pas confondre applications et applets....

  18. #18
    Membre actif
    Profil pro
    Électro-mécano-informaticien à ses heures
    Inscrit en
    Août 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Électro-mécano-informaticien à ses heures

    Informations forums :
    Inscription : Août 2010
    Messages : 95
    Par défaut
    en faisant des bibliothèques spécifiques (donc réécrit de zéro) avec un langage native et l'appel de c'est fonction native pourra être faite avec le langage javascript si un interpréteur est conçu avec ces bibliothèques. Un peu comme le style avec JAVA et JAVA Android, d'un point de vu c'est le même langage, mais pas le même "interprêteur". Je me souviens d'un élève dans mes cours d'info, lui il avait fait un "interprêteur PHP". En gros, les méthodes qu'il avait créer appelait les méthodes de PHP, mais si on se servait de sont "interprêteur" on ne voyait pas de PHP, seulement son langage qu'il venait d'écrire.

  19. #19
    Membre actif
    Profil pro
    Électro-mécano-informaticien à ses heures
    Inscrit en
    Août 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Électro-mécano-informaticien à ses heures

    Informations forums :
    Inscription : Août 2010
    Messages : 95
    Par défaut
    en gros : une sorte de "redéfinition de fonction".

  20. #20
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Il semble que tu confondes plusieurs choses.
    JavaScript est un langage dépendant de l'interface lui fournissant une API.
    Là, tu parles manifestement de porter l'API fournie par le navigateur au niveau d'un OS, ce qui n'a évidemment pas de sens...
    Mais si tu regardes d'autres API, comme par exemple celle d'Adobe, voire l'API de l'application navigateur (que ce soit Firefox ou Chrome) à destination des extensions et non celle de la page Web, tu comprends que beaucoup de choses sont possibles avec JavaScript.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. Réponses: 0
    Dernier message: 13/10/2010, 23h27
  2. Réponses: 6
    Dernier message: 08/06/2004, 14h22
  3. [Choix de langage] recherche language pour projet precis
    Par Boudiou dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 29/05/2004, 20h00
  4. [langage] cherche script pour formater une chaine
    Par MASSAKA dans le forum Langage
    Réponses: 7
    Dernier message: 12/11/2003, 12h18
  5. Réponses: 3
    Dernier message: 02/09/2002, 18h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo