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

C# Discussion :

Question d'héritage en c# [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de yoyo3d
    Homme Profil pro
    Administratif
    Inscrit en
    Avril 2002
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2002
    Messages : 421
    Par défaut Question d'héritage en c#
    Salut à tous,
    Non, je vous rassure, je n'ai pas besoin d'un notaire...

    J'avais commencé un projet personnel en C#/wpf /xaml et comme je l'avais mal préparé, je le recommence depuis le début.

    Il sagit une application PC me permettant de gérer des aquariums, et plus précisément le suivi des populations et des entretiens....Pour cela, j'ai redéfini ce que je veux pouvoir faire, et comment je souhaite l'afficher, mais c'est au niveau développement que je seche, je vous éxplique:

    Je souhaite créer des poissons "théoriques" qui serviront de modèle aux poissons réels qui seront affectés aux aquariums que j'aurais crées.

    Concrétement, l'individu que je viens d'acheter doit afficher dans l'interface, les caractéristiques du modèle théorique auquel il est lié mais aussi ces infos personnelles. Pour info, les caractéristiques ne sont pas la simplement pour faire joli, mais me permetront de réaliser des tests de compatibilité avec les autres espèces, ainsi qu'avec les différentes qualités d'eau .

    Question: dois je créer une super classe "Individu" qui englobe toutes les caractériques théoriques + les éléments personnels liéés à l'indivu (date de naissance, prix chez le fournisseur, dernière maladie etc…)

    Ou alors dois je créer une classe "individu" qui hérite de la classe "théorique"? Je suis débutant, j'ai bien compris le principe d'héritage, mais malheureusement, je ne comprend pas quand je "dois" l l'utiliser.

    Pour aider à la compréhension de mon projet, j'ai réalisé un "pseudo diagramme"
    projet aqua 2.pdf

    Merci à tous

  2. #2
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 17
    Par défaut
    Dans ce cas-ci, tu n'es pas "obligé" d'utiliser l'héritage.

    Si tu veux, utilise une classe mère, par exemple Animal, dans laquelle tu as toutes tes caractéristiques principales.
    Ensuite, crée tes classes filles, poisson, amphibien, .... qui hérite donc de la classe animal. Dans ces classes, tu peux ajouter toutes les caratéristiques secondaires (par exemple à poisson, euh j'ai pas d'exemple la tout de suite xD donc j'invente et je dis, un boolean pour savoir s'il est rare ou non )
    (Je te laisse choisir les noms ^^)

    Ensuite, tu peux créer un individu

    Exemple,
    Poisson individuPoisson_1 = new Poisson(...);
    Amphibien individuAmphibien_2 = new Amphibien(...);


    Cependant, je viens de voir ton schéma et à je suis un peu perdu :/

  3. #3
    Membre éclairé
    Avatar de yoyo3d
    Homme Profil pro
    Administratif
    Inscrit en
    Avril 2002
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2002
    Messages : 421
    Par défaut
    Ha, j'esperais que mon shéma soit le plus simple possible ...

    bon en théorie, dans un premier temps, je souhaitais créer une fiche "théorique" de renseignement sur une espece de poisson contenant
    nom, espece , famille ,origine géographique, mais aussi des détails sur la température et le Ph de l'eau dans son milieu naturel.

    dans une second temps, j'achete un poisson et je veux l'enregistrer dans mon appli.
    je vais chercher dans un menu déroulant le nom du poisson que j'ai préalablement créé, et je complete sa fiche "personnelle" en ajoutant des détails sur la couleur, la taille, le sexe etc....

    et je pensais donc que l'héritage me serait utile pour "transférer / lier" les infos de la fiche Thérorique à la fiche personnelle.

  4. #4
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 17
    Par défaut
    OK.

    Tu as donc besoin :
    d'une liste de Poissons à afficher en tant qu'espèce
    &
    d'une liste de Poissons en tant qu'individu

    Crée donc une interface IPoisson qui contient les variables communes à tout tes poissons (espèce, ...)
    Crée donc une classe Poisson, hérite de la classse IPoisson.
    Crée ensuite une classe Individu, qui hérite de Poisson et qui contient en plus les variables uniques à chaque poisson (âge, ...)

    C'est ce que tu veux ?

  5. #5
    Membre éclairé
    Avatar de yoyo3d
    Homme Profil pro
    Administratif
    Inscrit en
    Avril 2002
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Administratif
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2002
    Messages : 421
    Par défaut
    ça y ressemble fortement.
    Quel est l'interet de créer l'interface Ipoisson puisque ma classe Poisson va reprendre toutes les variables cette interface?
    je n'ai jamais vraiment compris l'utilité des Iclasses.
    en tout cas, merci pour tes réponses.

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 17
    Par défaut
    Ici, je n'y vois pas d'utilité, maintenant, c'était à titre d'exemple, au cas où, il y aurait des choses à ajouter, cette classe trouverait peut-être une utilité.

    une interface, c'est surtout un "contrat".

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

Discussions similaires

  1. question d'héritage multiple
    Par lao.patrick dans le forum C#
    Réponses: 2
    Dernier message: 02/05/2009, 11h52
  2. 2 questions sur héritage et require() distant
    Par ctrl+z dans le forum Langage
    Réponses: 8
    Dernier message: 06/01/2009, 08h42
  3. Question sur Héritage
    Par Moustico dans le forum C++/CLI
    Réponses: 6
    Dernier message: 03/01/2008, 19h27
  4. Question sur héritage
    Par Linkin dans le forum Delphi
    Réponses: 4
    Dernier message: 09/11/2006, 13h58
  5. Question d'héritage : Overload ou reintroduce ?
    Par LadyWasky dans le forum Langage
    Réponses: 9
    Dernier message: 31/10/2005, 13h07

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