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

ASP.NET Discussion :

Typer une variable avec interface


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Points : 637
    Points
    637
    Par défaut Typer une variable avec interface
    Bonjour,

    Qu chose m'echape, a quoi sert le faite de typer une variable avec une interface ?

    ImyInterface myVariable.

    Merci pour vos eclaircissement

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Ca permet de faire abstraction du type réel de l'objet. Par exemple, si tu as 2 types MyClass1 et MyClass2 qui implémentent tous les deux IMyInterface, tu peux utiliser l'un ou l'autre indifféremment via ta variable.

    L'intérêt de ne pas connaitre le type réel de l'objet est que cela diminue le couplage : par exemple, si tu as une méthode MaMethode qui renvoie un objet de type MyClass1, mais qu'un jour tu veux modifier pour que ça renvoie un MyClass2, tu es obligé de modifier le code appelant. Alors que si tu déclares que le type de retour de la méthode est IMyInterface, tu peux renvoyer MyClass1, MyClass2 ou n'importe quelle autre classe qui implémente IMyInterface, et que le code appelant n'a même pas besoin de connaître : il a juste besoin de savoir que c'est un objet implémentant IMyInterface.

    Cela permet de bien séparer l'interface d'un objet (son "contrat") de son implémentation. De cette façon tu peux changer l'implémentation sans affecter le code qui utilise l'interface

    Utiliser des interfaces plutôt que des types concrets est un des principes de base pour avoir une architecture robuste et évolutive. Je te conseille de lire cet article qui donne pas mal de conseils sur les bonnes pratiques en conception objet

  3. #3
    Membre confirmé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Points : 637
    Points
    637
    Par défaut
    Merci pour ton explication. Tres claire et me donne envie d'aller plus loin.

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 30/05/2006, 16h00
  2. Réponses: 7
    Dernier message: 13/03/2006, 15h39
  3. [Variable] Déclarer une variable avec un nom dynamique
    Par jacquesh dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 10/02/2006, 14h11
  4. Utilisation d'une variable avec l'instruction 'USE'
    Par florantanplan dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/11/2005, 10h39
  5. Désigner une variable avec une variable?
    Par littleman dans le forum Paradox
    Réponses: 4
    Dernier message: 12/08/2002, 11h21

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