• [^] # Re: IDE

    Posté par (site web personnel) . En réponse à la dépêche Dart va‐t‐il remplacer JavaScript comme langage dans les navigateurs ?. Évalué à 3.

    Dans les langages Objet "pur" une classe est un objet comme un autre. Donc tu peut la cloner si tu veut (reste à en trouver l'intérêt).

    Oui mais tu as toujours une séparation entre le modèle formel qui n'a aucune existence physique, et la réalité, l'instance.
    Là est le problème, même pour les langages à superclasses.

    Ce n'est pas une spécificité des prototypes. [chargement méthode à chaud]

    Oui mais le problème d'une classe, c'est qu'elle embarque tout son héritage avec elle même, donc si tu modifie une classe plus haut dans l'arbre d'héritage, l'ajout de méthodes que tu vas faire dans la superclasse ne l'atteint pas. Ou alors c'est une affreuse bidouille.

    Tu présente des choses puissantes, mais j'ai du mal à voir les cas d'utilisation. J'ai l'impression que c'est un paradigme qui manque de langages.

    C'est difficile parce que tu n'as pas l'habitude de penser avec ces nouveaux concepts. Moi même au début j'ai eu du mal.
    Le concept de l'héritage diamant dynamique est impossible à faire en classe. Ce type d'héritage te permet de définir une grammaire formelle, avec l'héritage statique, et de définir ton arbre syntaxique avec l'héritage dynamique.
    (Xor dans le schéma, c'est l'héritage dynamique)
    Héritage diamant en prototype

    C'est pas parce que tu ne vois pas d'applications qu'elles n'existent pas. Si tu avais l'habitude de programmer en procédural, tu ne verrais surement pas l'intérêt de l'objet à classe...

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker