Affichage des résultats du sondage: Faut-il arrêter de créer de nouveaux langages et développer plutôt des bibliothèques ?

Votants
103. Vous ne pouvez pas participer à ce sondage.
  • Oui, il y a déjà assez de langages pour en créer d'autres

    20 19,42%
  • Oui, ce sont les bibliothèques qui rendent un langage productif

    10 9,71%
  • Non, on ne peut pas corriger les défauts d’un langage avec des bibliothèques

    11 10,68%
  • Non, c’est le langage qui détermine le genre de bibliothèques possibles

    9 8,74%
  • Non, un nouveau langage tire des leçons des défauts des anciens langages

    35 33,98%
  • Pas d’avis

    8 7,77%
  • Autres (à préciser dans les commentaires)

    10 9,71%
+ Répondre à la discussion Actualité déjà publiée
  1. #21
    Membre éclairé
    Homme Profil pro
    chomeur
    Inscrit en
    avril 2015
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : chomeur
    Secteur : Distribution

    Informations forums :
    Inscription : avril 2015
    Messages : 381
    Points : 764
    Points
    764

    Par défaut

    Citation Envoyé par LSMetag Voir le message
    Mon problème n'est pas le paradygme par prototype, c'est plutôt ce qui est montré dans cette vidéo, et l'absence d'une quelconque compilation (par exemple on pourrait avoir un compilateur qui débuggue et pourrait ressortir du bytecode) :



    Les navigateurs actuels ont un support expérimental de WebAssembly. Donc ils supportent le bytecode.


    et dans une vie de développeur a quelles moment tu a besoin de faire ça !!([]) ou encore ca !!({}) et celle la []==false revient sur terre un développeur n'est pas la pour cherché la ptite bêbête pour contourner je ne sais quoi.

  2. #22
    Membre éprouvé

    Homme Profil pro
    Consultant
    Inscrit en
    janvier 2006
    Messages
    532
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : janvier 2006
    Messages : 532
    Points : 1 013
    Points
    1 013

    Par défaut

    Citation Envoyé par LSMetag Voir le message
    Mon problème n'est pas le paradygme par prototype, c'est plutôt ce qui est montré dans cette vidéo, et l'absence d'une quelconque compilation (par exemple on pourrait avoir un compilateur qui débuggue et pourrait ressortir du bytecode) :

    Les navigateurs actuels ont un support expérimental de WebAssembly. Donc ils supportent le bytecode.
    Comme dirait ma fille (14 ans). Non, mais t'es sérieux là! Qu'est-ce qu'on va bien pouvoir faire avec du bytecode lorsque l'on développe pour le web ? Le seul debuggeur que j'utilise lorsque je développe en javascript, c'est Firebug. C'est suffisant, pourquoi tu veux coller des débuggeurs bas niveau à Javascript Le développement JS n'a rien à voir avec le dev C ou C++, faut juste accepter le changement.
    "Rien ni personne décide de ta vie. Ton bonheur comme ton malheur, tu les dois à toi seul."

  3. #23
    Membre habitué

    Homme Profil pro
    Débutant OpenOffice et Poo
    Inscrit en
    février 2015
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Débutant OpenOffice et Poo
    Secteur : Industrie

    Informations forums :
    Inscription : février 2015
    Messages : 129
    Points : 147
    Points
    147

    Par défaut

    Hormis des questions économiques, un nouveau langage apporte un nouveau moyen d'abstraction, comme UML par exemple, ou d'autres outils, l'interface cité par MikeRowSoft, ou une nouvelle application. Pourquoi devrait-on programmer toujours pour des machines? Pourquoi ne pas programmer pour des animaux ou des humains ? Ex : Programmer le démontage d'une usine.

  4. #24
    Membre éprouvé

    Homme Profil pro
    Consultant
    Inscrit en
    janvier 2006
    Messages
    532
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : janvier 2006
    Messages : 532
    Points : 1 013
    Points
    1 013

    Par défaut

    Y a quelques années, je voulais compiler l'ensemble de mon expérience en dev de site web pour faire un outil qui permettrait à n'importe qui de faire un site web "sur mesure", juste en répondant à des questions.

    Il choisi le type de site (parmis une liste), puis en fonction du type il a un questionnaire qui permet d'affiner les fonctionnalités.
    "Rien ni personne décide de ta vie. Ton bonheur comme ton malheur, tu les dois à toi seul."

  5. #25
    Membre confirmé
    Avatar de vinmar
    Homme Profil pro
    Développeur Web
    Inscrit en
    août 2012
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : août 2012
    Messages : 131
    Points : 506
    Points
    506

    Par défaut

    Citation Envoyé par melka one Voir le message
    et c'est reparti pour critiquer javascript.
    Attends, on a pas encore eu les pro/contre Java...

    L'informatique est en constante évolution. Il n'y a pas de raison que les langages soient figés. Comme dit plus haut (Luckyluke34) l'évolution de toute l'informatique entraînera la création de nouveaux paradigmes et donc de nouveaux outils y répondant et en particulier les langages de programmation.
    M. Lebowski : Avez-vous un emploi, monsieur ?
    Le Duc : Un emploi ?
    M. Lebowski : Ne me dites pas que vous cherchez un emploi dans cette tenue un jour de semaine ?
    Le Duc : Un jour de… Quel jour on est ?

  6. #26
    Rédacteur/Modérateur

    Homme Profil pro
    Network game programmer
    Inscrit en
    juin 2010
    Messages
    4 349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : juin 2010
    Messages : 4 349
    Points : 17 037
    Points
    17 037

    Par défaut

    Citation Envoyé par melka one Voir le message
    et dans une vie de développeur a quelles moment tu a besoin de faire ça !!([]) ou encore ca !!({}) et celle la []==false revient sur terre un développeur n'est pas la pour cherché la ptite bêbête pour contourner je ne sais quoi.
    C'est surtout que ça n'a aucun sens qu'une chaîne vide soit évaluée à false, alors qu'un tableau ou objet vide est évalué à true (enfin pour l'array, si t'utilises l'opérateur !, si tu fais la comparaison avec == false, cette fois ça vaut false, mais WTF), et autres joyeusetés du genre
    Et je parle même pas des immondices avec les instanceof qui retournent pas du tout ce qu'on est en droit d'attendre
    Et le passage sur l'addition/concaténation de chaînes et chiffres qui finit d'achever tout ça
    De là à dire que javascript ça part dans tous les sens et fait n'importe quoi.. c'est plutôt simple à franchir comme pas

    En face tu prends LUA qui a une syntaxe équivalente, un système de prototypage équivalent, il a bien moins d'immondices à l'utilisation. Ou bien Python

  7. #27
    Membre éclairé Avatar de pcdwarf
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    février 2010
    Messages
    209
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : février 2010
    Messages : 209
    Points : 706
    Points
    706

    Par défaut

    Personnellement, je trouve que le foisonnement de langages et de librairies actuelles est détestable.
    Mais pire que ça, c'est le changement permanent qui est pénible.

    On a pas fini de débugger une nouvelle techno et de la rendre à peu près stable que déjà il faut se jeter sur le dernier truc à la mode.

    Mon choix va au langage qui évolue le moins ou en tout cas qui n'évolue qu'après avoir bien pesé pour et contre.
    Un langage où le code que j'écris aujourd'hui ne sera pas obsolète dans 2 ans.

    Pour la même raison, mon choix va aux bibliothèques qui ont le moins d'interdépendances et dont l'API reste stable.

  8. #28
    Membre expert

    Homme Profil pro
    Ingénieur Etudes et Développements Junior
    Inscrit en
    juillet 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développements Junior
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juillet 2009
    Messages : 875
    Points : 3 527
    Points
    3 527

    Par défaut

    Citation Envoyé par zecreator Voir le message
    Comme dirait ma fille (14 ans). Non, mais t'es sérieux là! Qu'est-ce qu'on va bien pouvoir faire avec du bytecode lorsque l'on développe pour le web ? Le seul debuggeur que j'utilise lorsque je développe en javascript, c'est Firebug. C'est suffisant, pourquoi tu veux coller des débuggeurs bas niveau à Javascript Le développement JS n'a rien à voir avec le dev C ou C++, faut juste accepter le changement.
    Ben non. C'est le WebAssembly qui est parsé et débuggué au moment de sa compilation en bytecode. Comme pour du C# serveur. C'est juste que dans le navigateurs, après, ce sera du bytecode. Et c'est cool, on ne verra plus ton code en clair !

    Sinon pour la vidéo ci-dessus, le mec a testé des bases. Des choses qu'on pourrait utiliser n'importe quand n'importe où selon les situations. Il y a des situations particulières qui peuvent obliger à des manipulations relativement stupides, parce que le langage exige un workaround. Ca n'arrive pas qu'à Javascript, mais plus souvent à Javascript.

    Quand on te dit que 2=="2" => true, la messe est dite... C'est le principal reproche fait à JS, en plus du debuggage. Ou encore que 2+"2"= 4 au lieu de 22.

    Quand ParseInt("08") = 0 aussi.
    Ou quand 0.1 + 0.2 != 0.3, encore aussi. Car 0.1 n'est pas le 0.1 qu'on écrit habituellement. C'est un truc du style 0.10000000000034.
    Ou encore quand Math.max < Math.min, c'est encore problématique.

  9. #29
    Expert éminent Avatar de Uther
    Homme Profil pro
    Inscrit en
    avril 2002
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2002
    Messages : 3 487
    Points : 8 059
    Points
    8 059

    Par défaut

    Citation Envoyé par goldbergg Voir le message
    Le gros inconvenant avec le JS (que l'on retrouve probablement avec d'autre langages, mais vue que le JS est le plus à la mode le problème est principalement visible à travers ce langage) c'est qu'il n'implémente pas le paradigme objet par class (que tout le monde connaît et qui visiblement est le seul que certain connaisse) mais le paradigme objet par prototypes (que beaucoup ne veulent pas se casser le c#l à apprendre bien qu'il n'est rien de bien compliqué).
    Pour moi le fait d'avoir un paradigme différent n'est certainement pas le problème de JavaScript, J'ai appris des langages avec de paradigmes bien plus éloignés de l'objet par classe, que le JavaScript.

    Son typage contre naturel est pour moi de loin son premier défaut. Il y a la célèbre vidéo "Wat" qui présente très bien le problème de manière drôle. Tu rétorqueras a raison, que tous les langages ont ce genre de petites subtilités, mais en JavaScript il y en a partout, et tout le temps .

    Citation Envoyé par LSMetag Voir le message
    Ou quand 0.1 + 0.2 != 0.3, encore aussi. Car 0.1 n'est pas le 0.1 qu'on écrit habituellement. C'est un truc du style 0.10000000000034.
    Autant je suis d'accord sur le reste, autant sur ce point, le responsable c'est la norme IEEE 754. Tu auras le même problème sur presque tous les langages car ils utilisent cette norme (ou des variation légères de celle ci). Vu qu'elle est basée sur une représentation binaire des nombre a virgule flottante, on ne peut absolument pas considérer les valeurs, même littérales, comme exactes.

  10. #30
    Membre éprouvé

    Homme Profil pro
    Consultant
    Inscrit en
    janvier 2006
    Messages
    532
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Consultant

    Informations forums :
    Inscription : janvier 2006
    Messages : 532
    Points : 1 013
    Points
    1 013

    Par défaut

    Citation Envoyé par LSMetag Voir le message
    Ben non. C'est le WebAssembly qui est parsé et débuggué au moment de sa compilation en bytecode. Comme pour du C# serveur. C'est juste que dans le navigateurs, après, ce sera du bytecode. Et c'est cool, on ne verra plus ton code en clair !
    Et c'est juste pour planquer ton code que tu aimerais ajouter un compilateur aux fesses de Javascript ?
    "Rien ni personne décide de ta vie. Ton bonheur comme ton malheur, tu les dois à toi seul."

  11. #31
    Membre émérite
    Avatar de RyzenOC
    Homme Profil pro
    NR
    Inscrit en
    juin 2013
    Messages
    3 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juin 2013
    Messages : 3 064
    Points : 2 914
    Points
    2 914
    Billets dans le blog
    8

    Par défaut

    cool, on ne verra plus ton code en clair !
    J'ai jamais compris cette obsessions chez certains de vouloir cacher le code.
    Si tu veut pas qu'on voient ton code, tu le mets pas sur internet voila, compiler ou pas, sa n'offre aucune protection, seul une licence le peut.

    Sa me parait dangereux d’exécuter du bytecode a distance quand meme, le compiler dans le navigateur permeterais au moins au compilateur d'analyser le code et d'éviter de lancer des instructions de ce type:
    J'extrapole et je me doute que se sera pas aussi simple, mais quand on voit les failles de Flash et des Applets java j'suis pas trop chaud.

    Je trouve que sa offre une sécurité supplémentaire de pouvoir voir le code source. Sa permettras aussi d'installer/crée des plugins qui pourrons modifier interdire certaines instructions.
    =>Comment jouer sur xbox one à moindre coût ?
    Achetez un notebook de 2010 à 50€ sur leboncoin, installez steam, connectez le pc à un écran, branchez une manette xbox au pc
    Enjoy

  12. #32
    Membre habitué Avatar de goldbergg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    novembre 2014
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : novembre 2014
    Messages : 54
    Points : 147
    Points
    147

    Par défaut

    Ba, comme je l'ai dit précédemment, un langage sa s’apprend et la pire des erreur que l'on puise faire, c'est de vouloir faire en sorte qu'il fonctionne comme les autres.

    Dans les spécificité du langage il y a un certain nombre de valeur qui retourne false si elle sont évalué parce qu'il y a des conversion implicite lors de l'utilisation de certain opérateur que l'on peut évité en faisant les chose bien.

    Si c'est trop compliqué pour d'apprendre les spécificité du langage, vous n'avez qu'a pas évaluer d'expression sans l'opérateur "===" qui est là pour sa et utilisé toString() { (42).toString(); } pour convertir les nombre en chaines.

    Bref, faut arrêter de faire n'importe quoi et chercher à comprendre en lisant la doc...

    Quand on te dit que 2=="2" => true, la messe est dite...
    C'est tout à fait normal, il faut utiliser le "===" pour comparer la valeur et le type en JS, le "==" fait des conversion implicite.
    Ou encore que 2+"2"= 4 au lieu de 22.
    Chez moi sa fait bien "22", mais bon au pire on mélange pas les torchon et les serviette et tu convertie ton nombre en chaine si tu veux les concaténé...
    Quand Math.Round(8) = 0 aussi.
    Chez moi ça sa péte une erreur...
    Ou quand 0.1 + 0.2 != 0.3, encore aussi. Car 0.1 n'est pas le 0.1 qu'on écrit habituellement. C'est un truc du style 0.10000000000034.
    et oui la magie des float que l'on retrouve dans beaucoup de langage
    Ou encore quand Math.max < Math.min, c'est encore problématique.
    Tu m'explique se que tous fous à utiliser une méthode (qui est censé prendre au moins un argument) sans paramètre?
    C'est utiliser les api n'importe comment qui est problématique et ça, sa vaut pour tous les langage!

    La plupart des problème que vous cité résulte d'une mauvaise utilisation du langage, alors certe certain truc peuvent paraître étrange, mais en codant normalement et en respectant certaine convention, se genre de chose n'arrive jamais (ou que rarement) et quand on apprend à les utiliser, dans bien des cas sa facilite les chose.

  13. #33
    Expert éminent Avatar de Uther
    Homme Profil pro
    Inscrit en
    avril 2002
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : avril 2002
    Messages : 3 487
    Points : 8 059
    Points
    8 059

    Par défaut

    Sauf que justement un langage moderne comme JavaScript aurait vraiment du d'éviter au maximum les comportements contre intuitifs, surtout qu'il n'a pas l'excuse de vieux langages comme le C qui à 40 ans d'histoire avait des contraintes très différentes.

    D'autres langages (comme le Python qui précède le JavaScript de quelques années) font beaucoup mieux là dessus.

  14. #34
    Membre expert

    Homme Profil pro
    Ingénieur Etudes et Développements Junior
    Inscrit en
    juillet 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développements Junior
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juillet 2009
    Messages : 875
    Points : 3 527
    Points
    3 527

    Par défaut

    Citation Envoyé par zecreator Voir le message
    Et c'est juste pour planquer ton code que tu aimerais ajouter un compilateur aux fesses de Javascript ?
    Non y a d'autres moyens pour ça, comme JScrambler. Ce que je veux vraiment, c'est débugger, c'est voir des erreurs de compilation avant l'exécution, des trucs soulignés, pas parce que la syntaxe est pas bonne, mais parce que le résultat a un soucis, un inspecteurs d'objets pour voir quels sont les types de chaque variable, l'évolution de leur valeur à chaque ligne de code,...

    Le problème de Javascript, c'est que ça passe, mais qu'après on ne sait pas ce qui se passe... Ca pourrait être un proverbe ça ^^

  15. #35
    Membre éclairé
    Homme Profil pro
    chomeur
    Inscrit en
    avril 2015
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : chomeur
    Secteur : Distribution

    Informations forums :
    Inscription : avril 2015
    Messages : 381
    Points : 764
    Points
    764

    Par défaut

    Quand on te dit que 2=="2" => true, la messe est dite... C'est le principal reproche fait à JS, en plus du debuggage. Ou encore que 2+"2"= 4 au lieu de 22.

    Quand Math.Round(8) = 0 aussi.
    Ou quand 0.1 + 0.2 != 0.3, encore aussi. Car 0.1 n'est pas le 0.1 qu'on écrit habituellement. C'est un truc du style 0.10000000000034.
    Ou encore quand Math.max < Math.min, c'est encore problématique.

    Répondre avec citation Répondre avec citation Multi-citer ce message 0 0 Créer une entrée Blog

    Quand on te dit que 2=="2" il faut répondre c'est normale car en javascript il existe le triple égale (moderne) qui vérifie le type la bonne syntaxe est 2==="2"

    Ou encore que 2+"2"= 4 pourquoi ça doit retourné automatiquement 22 dans ce cas on a deux choix pour l'implémentation soit on favorise l'addition soit on favorise la concaténation en final le deux sont faux le meilleur choix devrait être une erreur mais au fait chez moi aussi ca retourne 22.

    0.1 + 0.2 != 0.3 n'est pas le 0.1 c'est la précision mais comme ça a déjà été dit c'est pas la faute a js

    Math.max < Math.min ca a été dit

    (Math.round(8) retourne 0 il teste avec ie 3 son code ? car avec chrome et firefox Math.round(8) retourne 8

    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
    24
    25
    26
    27
    28
    29
    30
    31
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>tt</title>
    <style type="text/css">
    
    body{
    	background-color:gray;	
    }
    </style>
    <script>
    
    function teste(){
    
    alert(2+"2")
    
    alert(Math.round(8))
    
    alert(2=="2")
    
    alert(2==="2")
    
    }
    
    </script>
    </head>
    <body>
    <button onclick="teste()">teste</button>
    </body>
    </html>

  16. #36
    Membre expert

    Homme Profil pro
    Ingénieur Etudes et Développements Junior
    Inscrit en
    juillet 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développements Junior
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juillet 2009
    Messages : 875
    Points : 3 527
    Points
    3 527

    Par défaut

    Citation Envoyé par sazearte Voir le message
    J'ai jamais compris cette obsessions chez certains de vouloir cacher le code.
    Si tu veut pas qu'on voient ton code, tu le mets pas sur internet voila, compiler ou pas, sa n'offre aucune protection, seul une licence le peut.

    Sa me parait dangereux d’exécuter du bytecode a distance quand meme, le compiler dans le navigateur permeterais au moins au compilateur d'analyser le code et d'éviter de lancer des instructions de ce type:
    J'extrapole et je me doute que se sera pas aussi simple, mais quand on voit les failles de Flash et des Applets java j'suis pas trop chaud.

    Je trouve que sa offre une sécurité supplémentaire de pouvoir voir le code source. Sa permettras aussi d'installer/crée des plugins qui pourrons modifier interdire certaines instructions.
    Disons que plutôt que d'avoir des refresh en passant par le serveur, c'est bien d'avoir des trucs ultra réactifs via un langage client. Et malgré une licence, tout le monde peut te voler ton code, en le modifiant un petit peu pour ensuite te faire concurrence. WebGL pour les jeux, c'est aussi du JS. Donc on est pas prêts de laisser tomber Flash pour des jeux comme Angry Bird.
    Sans oublier, mais bon, t'expose aussi ta médiocrité, la mise à nue de failles de sécurité, genre injection JS.
    C'est sensé être validé par le W3C. Donc ils prendront bien 10 ans pour le tester ^^'

  17. #37
    Membre expert

    Homme Profil pro
    Ingénieur Etudes et Développements Junior
    Inscrit en
    juillet 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Etudes et Développements Junior
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juillet 2009
    Messages : 875
    Points : 3 527
    Points
    3 527

    Par défaut

    Citation Envoyé par goldbergg Voir le message
    ...
    Citation Envoyé par melka one
    ...
    Non mais pour le "===" ou d'autres trucs, ceux qui pratiquent JS le savent, et le mec de la vidéo aussi. Il dit bien qu'il a beaucoup pratiqué JS. Il montre juste à quel point le langage est inintuitif pour le premier venu.

    Par contre, Mea-Culpa. C'était pas Math.Floor(8) = 0, ma mémoire m'a joué des tours (et je trouvais ça bizarre quand même). C'était ParseInt("08") = 0 alors que ParseInt("06")=6. Il faut préciser que c'est en base 10 avec ParseInt("08",10). Bref, c'est logique pour le commun des mortel (ironie inside). Ton code marchera à des moments, et si tu tombes sur un multiple de 8 par hasard selon ce que saisit l'utilisateur, ben tu comprends pas si tu ne connais pas le comportement de JS pour ce genre de choses... Si le mec n'avait pas parlé du 2ème paramètres, j'aurais mis des jours à tilter là dessus.

    Merci pour l'info sur la norme des float. Je la connaissais pas. Faut croire que .NET a su gérer ça. J'étais jamais tombé sur ce genre de problème. D'ailleurs quelle idée de pondre une norme impliquant qu'un nombre n'a pas la valeur de ce qu'on écrit et voit à l'écran... Enfin bon, ça permet de comprendre l'intérêt du type Number, ou de mettre Math.Round de partout.

    Quand tu sors de l'école (Bac+5), tu as quoi, 4 heures de Javascript sous le bras ? Et on t'auras appris que le DOM et la base du prototypage. Je vois pas comment tu peux t'en sortir correctement en entreprise sans des mois à ne faire QUE ça ou une formation dédiée, avec un super débuggueur.

    Ce langage a sa cohérence à lui, différente des langages plus contemporains et des concepts de base qu'on t'apprend à l'école. Donc à qui la faute ?
    Ca me réconcilie un peu, voyant qu'il y a une logique, mais je ne démords pas qu'il faudrait qu'il soit compilé et qu'il y ait de vrais cours dessus.

  18. #38
    Provisoirement toléré Avatar de MikeRowSoft
    Homme Profil pro
    sans profession
    Inscrit en
    avril 2013
    Messages
    1 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : sans profession

    Informations forums :
    Inscription : avril 2013
    Messages : 1 101
    Points : 0
    Points
    0

    Par défaut

    Hormis des questions économiques, un nouveau langage apporte un nouveau moyen d'abstraction, comme UML par exemple, ou d'autres outils, l'interface cité par MikeRowSoft, ou une nouvelle application. Pourquoi devrait-on programmer toujours pour des machines? Pourquoi ne pas programmer pour des animaux ou des humains ? Ex : Programmer le démontage d'une usine.
    ne fait pas de remarque trop futuriste. Faudrait bien garder la possibilité de faire faire la même chose mais de deux façon différentes au minimum.

  19. #39
    Membre éclairé
    Homme Profil pro
    chomeur
    Inscrit en
    avril 2015
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : chomeur
    Secteur : Distribution

    Informations forums :
    Inscription : avril 2015
    Messages : 381
    Points : 764
    Points
    764

    Par défaut

    Par contre, Mea-Culpa. C'était pas Math.Floor(8) = 0, ma mémoire m'a joué des tours (et je trouvais ça bizarre quand même). C'était ParseInt("08") = 0 alors que ParseInt("06")=6. Il faut préciser que c'est en base 10 avec ParseInt("08",10).
    encore faux chez moi sa retourne 8

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>tt</title>
    
    <style type="text/css">
    
    body{
    	background-color:gray;	
    }
    
    </style>
    
    <script>
    
    function teste(){
    
    alert(parseInt("06"))
    
    alert(parseInt("08"))
    
    }
    </script>
    
    </head>
    <body>
    
    <button onclick="teste()">teste</button>
    
    <div style="margin:auto"></div>
    </body>
    </html>
    je connais pas les motivations du gars mais je pense qu'il a voulu jouer sur le fait que javascript est mal vu c'est plus un sketch qu'autre chose.

    pour en revenir au sujet qui dit qu' un bon langage semble etre un langage qui permet la création de framework efficaces vu le nombre de framework en js javascrpt semble etre the langage

  20. #40
    Provisoirement toléré Avatar de MikeRowSoft
    Homme Profil pro
    sans profession
    Inscrit en
    avril 2013
    Messages
    1 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : sans profession

    Informations forums :
    Inscription : avril 2013
    Messages : 1 101
    Points : 0
    Points
    0

    Par défaut

    En face tu prends LUA qui a une syntaxe équivalente, un système de prototypage équivalent, il a bien moins d'immondices à l'utilisation.
    C'est pas pour être utilisé par un autre corps de métier qu'il y a quelques fois des zones de textes accueillant un code "interprétable" ?
    Il y a pas que LUA dans se cas, les scripts systèmes sont aussi concernés...
    Je crois que SQL pointe le bout de son nez...

Discussions similaires

  1. quand est il nécessaire de créer plusiers index ?
    Par doudou8mc dans le forum Langage SQL
    Réponses: 1
    Dernier message: 03/09/2009, 17h16
  2. créer mon propre langage de programmation
    Par fethi_09dz dans le forum Débuter
    Réponses: 12
    Dernier message: 14/01/2008, 13h14
  3. Réponses: 4
    Dernier message: 13/08/2005, 10h20

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