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

Langage Delphi Discussion :

est ce que le polymorphisme existe dans les langage non typé ?


Sujet :

Langage Delphi

  1. #1
    Membre confirmé
    Avatar de Jcpan
    Inscrit en
    Août 2008
    Messages
    542
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 542
    Points : 475
    Points
    475
    Par défaut est ce que le polymorphisme existe dans les langage non typé ?
    Bonjour

    je viens juste d'approfondir mes connaissances dans le polymorphisme en delphi, la ou je me suis rendu compte que dans les langages non type il n' y a pas une réelle notion de polymorphisme (comme php d'ou je viens).
    Est ce que c'est correcte ?

  2. #2
    Membre chevronné
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Points : 1 975
    Points
    1 975
    Par défaut
    En php, tu peux bien faire : class B extends A

    La classe fille peut aussi redéfinir les attributs ainsi que les méthodes de la classe mère (la notion de surcharge existe aussi)

    Oui, c'est vrai à partir de la version 5 du langage .

  3. #3
    Membre éprouvé
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Points : 1 294
    Points
    1 294
    Par défaut
    le polymorphisme n'est pas dépendant du typage.

    Delphi à toujours été une exception dans les langages de programmation, car contrairement à la plupart ou l'on peux déclarer des variable non typée, delphi lui veux du type.
    le seul cas ou delphi accepte un truc non typé c'est dans les constantes et encore...

    d'ailleur, beaucoup de noobs, et appelons les comme cela, utilise de toute part le type "variant" en Delphi ce qui est trés trés déconseillé car anti-performant.
    [ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ]
    Ma messagerie n'est pas la succursale du forum... merci!

  4. #4
    Expert confirmé

    Profil pro
    Leader Technique
    Inscrit en
    Juin 2005
    Messages
    1 756
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Leader Technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 756
    Points : 4 173
    Points
    4 173
    Par défaut
    Citation Envoyé par Jcpan Voir le message
    je viens juste d'approfondir mes connaissances dans le polymorphisme en delphi, la ou je me suis rendu compte que dans les langages non type il n' y a pas une réelle notion de polymorphisme (comme php d'ou je viens).
    Est ce que c'est correcte ?
    C'est aussi ce que je pense en tout cas. Sans typage et sans vérification des types, le polymorphisme ne sert à rien. En effet c'est un concepte qui permet d'utiliser un objet à la place d'un autre. Sans lui, le contrôle des types t'enverrait boulé car si tu attends un type A, tu ne peux pas utiliser un type B.

    En php, tu peux bien faire : class B extends A

    La classe fille peut aussi redéfinir les attributs ainsi que les méthodes de la classe mère (la notion de surcharge existe aussi)
    Oui, mais c'est une illusion. Car en PHP tu peux aussi définir une classe C qui n'a rien à voir avec A ni B, passer la classe C en paramètre à une fonction qui attendais une classe A.
    Si la fonction essaie d'appeler une méthode de A, il suffit que la classe C possède une méthode qui porte le même nom pour que la méthode soit appelée. Sauf qu'elle n'aura probablement rien à voir, et bonjour les dégâts.
    Un langage typé te dira que tu es en train de faire n'importe quoi, et tu as alors besoin du polymorphisme pour pouvoir utiliser la classe B à la place de la classe A.

    Ensuite, c'est une question de point de vue. Soit tu considères que dans un language non typé, le fait que tu puisses utiliser n'importe quoi à la place de n'importe quoi en fait le language le plus polymorphe qui soit, soit tu considères comme moi, que le polymorphisme n'a aucun sens sans vérification des types.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Est-ce que Lucène cherche aussi dans les DB ?
    Par whitespirit dans le forum Zend Framework
    Réponses: 1
    Dernier message: 22/05/2008, 22h57
  2. [MySQL] réponse vide alors que le champs existe dans la table, sans retour d'erreur
    Par ben_skywalker dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 15/02/2007, 14h20
  3. Est-ce que Windows XP peut lire les fichiers ADPCM ?
    Par beegees dans le forum Windows XP
    Réponses: 1
    Dernier message: 24/11/2006, 23h52
  4. est ce que un champs existe dans la base?
    Par cha_cha dans le forum Langage SQL
    Réponses: 9
    Dernier message: 03/10/2005, 11h25
  5. [TOMCAT]Est ce que tomcat compile à chaque demarage les jsp
    Par miloud dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 06/06/2005, 13h32

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