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 :

Developpement C# : Grouper des classes [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2013
    Messages : 7
    Par défaut Developpement C# : Grouper des classes
    Bonjour,

    Actuellement entrain d'étudier C#, j'ai une question qui me semble simple mais ou j'arrive pas a trouver la réponse.

    Pour faire simple, imaginons qu'on souhaite développer une application qui permet de géré les cours dans une école.
    Nous avons besoin :
    - Liste de tout les élèves
    - Liste de tout les cours
    - Liste de toutes les classes
    - Liste de tous les taches/devoirs
    - Liste de tous les groupe

    La création se classes pour chaque éléments cité plus haut est fait, mais mon problème est dans la création d'un groupe.
    Comment faire pour rajouter plusieurs élèves (les objets) dans un objets groupe ????

    Je vois beaucoup sur le net des technique style, List<> & Collection<> etc...
    Mais je vois pas vraiment d'exemple concret pour ce type de cas de figure, est-ce que c'est une chose simple ?

    Avez-vous des conseils ou liens ?
    Étant donne que je sais pas trop quoi chercher, j'ai beaucoup de mâle car ça fait un petit moment que je cherche sur le net.

    Merci d'avance !

  2. #2
    Membre chevronné Avatar de WaterTwelve21
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2015
    Messages
    270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2015
    Messages : 270
    Par défaut
    Bonjour , ton cas est un patron classique de la programmation objet.

    Ton objet Groupe doit contenir une liste d'élève pour pouvoir en ajouter , cette liste doit être présente dans les propriétés publiques de ta classe.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public class Groupe {
    public int ID { get; set;}
    public List<Eleve> Eleves {get;set;} 
    }
    Le type liste va te permette de stocker tes objets élèves , et de pouvoir manipuler cette liste ( ajout , suppression , tri ) comme toute autre collection.

    Ainsi , tu peux ajouter un élève de cette manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Eleve eleve = new Eleve("Joe");
    monGroupe.Eleves.Add(eleve);
    Bon code.

  3. #3
    Membre Expert

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 067
    Par défaut
    Il faut surtout ne pas oublier d'initialiser ta liste avant d'y ajouter des éléments.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maListe = new List<monType>();

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2013
    Messages : 7
    Par défaut La class :)
    Génial WaterTwelve21 ! Un grand merci !

    youtpout978 je vois pas trop quel moment je l'initialise, dans la création de l'objet ( public class Groupe ) ou ailleurs ?

  5. #5
    Membre Expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Par défaut
    Salut,

    tu peux instancier ta List<T> au moment de sa déclaration, ou bien dans le constructeur de ta classe.

    Bon dev.

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2013
    Messages : 7
    Par défaut
    Hello,

    Je reviens vers vous vue que j'ai pas réussi, après plusieurs essai de différent manière...
    Je vais vous expliqué ma dernière tentative et si possible vous me dite ou j'ai foiré :

    J'ai une class Eleve :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        class Eleve 
        {
            public int ID { get; set; }
            public string Nom { get; set; }
            public string Prenom{ get; set; }
        }
    Puis une class Groupe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        class groupe
        {
            public int ID { get; set; }
            public string Nom { get; set; }
            public List<Eleve> Eleves { get; set; }
        }
    J'ai bienvue que c'était pas pareil que ce que WaterTwelve21 m'as expliqué, il fait un public class groupe dans la classe Eleve mais sans succès.

    Puis dans mon code principale (Main) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    // Création d’élèves :
                Eleve Kev = new Eleve() { Nom = "Kev ", Prenom= "Van" };
                Eleve Adam = new Eleve() { Nom = "Adam ", Prenom= "Voor" };
                Eleve Syle = new Eleve() { Nom = "Syle ", Prenom= "Ves" };
     
    // Création du groupe 
                groupe Baam = new groupe () { ID = 01, Nom = "Baam" };
     
    // Rajout de l'Eleve dans le groupe 
                Baam.Eleves.Add(Syle);
    Une fois que j'exécute le code :
    Object reference not set to an instance of an objet.


    Alors qu'est ce que je fais de mâle ? tout ? hahaha
    Est-ce qu'il y a un terme qui me permettrais de faire plus de recherche.
    Car a chaque fois que je fait mes recherche sur le net ou dans la doc, je tombe sur comment crée une list.

    J'ai pas de soucis pour crée une liste en dehors dans objet, mais je vois pas trop ce que je dois rechercher.

    Merci encore d'avance !

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

Discussions similaires

  1. [CR]grouper des dates par semaines, mais semaines FR !
    Par neo.51 dans le forum SAP Crystal Reports
    Réponses: 11
    Dernier message: 18/05/2004, 20h43
  2. Créer les get et set des classes
    Par cameleon2002 dans le forum JBuilder
    Réponses: 3
    Dernier message: 17/09/2003, 21h03
  3. specifier les chemins des .class
    Par draken dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 29/07/2003, 09h35
  4. [CR] Grouper des sections de détail?
    Par rodrigue50 dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 06/06/2003, 14h32
  5. Inserer des classes java existantes
    Par 2000 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 20/03/2003, 12h35

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