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

VB.NET Discussion :

Class compte bancaire


Sujet :

VB.NET

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 14
    Points : 8
    Points
    8
    Par défaut Class compte bancaire
    Bonjour mesdames et messieurs, ^^
    Je vous post ce message car j'ai un souci avec un devoir que je ne comprends pas tres bien disons.
    J'etudie chez le CNED l'introduction au developpement de logiciels applicatifs et je suis a mon dernier devoir.
    Mais voila, la notion de classe n'est pas tres bien rentré dans ma tête, faute d'explications sur le manuel.
    J'ai une class compte bancaire et je travaille sur Visual Basic 2008 Express Edition.
    Voici les methodes permettant de lire le nom et prenom du titulaire avant cet exercice:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Public Function GetprenomTtulaire() As String
            GetprenomTtulaire = PrenomTitulaire
        End Function
        Public Function GetNomtitulaire()
            GetNomtitulaire = NomTitulaire
        End Function

    Et voici le constructeur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Public Sub New(ByVal PNomtitulaire As String, ByVal PPrenomTitulaire As String, ByVal PDateOuverture As Date, ByVal PTypeCompte As String)
            NomTitulaire = PNomtitulaire
            PrenomTitulaire = PPrenomTitulaire
            DateOuverture = PDateOuverture
            TypeCompte = PTypeCompte
            NbOperations = 0
            Solde = 0
        End Sub

    Et maintenant sur ces codes, On suppose que l'on peut etre amené a modifier le nom et le prenom du titulaire du compte.
    On me demande de créer une methode SetTitulaire qui permet de faire ceci et de simplifier le constructeur de la classe avec cette methode.


    Voici ce que j'ai fait:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Public Property PNomtitulaire()
            Get
                return NomTitulaire
            End Get
            Set(ByVal value)
                NomTitulaire = value
            End Set
        End Property
        Public Function GetNom()
            GetNom = NomTitulaire
        End Function

    Ca me permet de modifier le nom du titulaire et de le lire.
    J'ai fais la meme chose avec le prenom du titulaire, mais cela est-il correcte?
    On me demande une methode SetTitulaire mais je ne sais pas comment faire car on en a jamais fait sur le manuel.
    (le manuel est assez restreint, pas d'explications sur les methodes..etc)
    alors c'est ce que j'ai fait avec mes propres connaissances et recherches.

    Si cela est correcte comment dois-je simplifier le constructeur de la classe avec ceci?
    je n'ai pas trouvé la reponse, donc je supose que ma methode est fausse?

    Pourriez-vous m'eclairer Svp sur ce sujet.

    Merci de m'accorder de votre temps et cordialement. ^^

  2. #2
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 193
    Points : 28 077
    Points
    28 077
    Par défaut
    Ce que tu as fais n'est pas faux, mais ne répond pas à ce qui t'es demandé.

    Tu semble ne pas savoir ce qu'est une méthode. Il existe principalement 2 types de méthodes, les procédures et les fonctions, la différence étant que les secondes retournent un résultat, pas les premières.

    Tes 2 fonctions GetPrenomTitulaire et GetNomTitulaire sont des méthodes (et d'une certaine manière New est aussi une méthode). Ce qu'on te demande c'est d'en créer une 3ème, SetTitulaire.
    Ici, 2 possibilités, soit ta méthode ne retourne rien (ce qui est à priori le cas) et tu peux partir sur une procédure, soit elle devra retourner un résultat comme par exemple "ça s'est bien passer" et il faudra partir sur une fonction.

    On va choisir la procédure.

    Maintenant, elle va servir à modifier les variables internes NomTitulaire et PrénomTitulaire, il va donc falloir passer les nouvelles valeurs en arguments :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Public Sub SetTitulaire(byval nom as string, byval prenom as string)
       NomTitulaire = nom
       PrenomTitulaire = prenom
    End Sub
    * à noter que pour respecter la convention de nommage qu'il semble y avoir dans ton code, j'aurais du appeler les paramètres PNomTitulaire et PPrenomTitulaire. Je ne l'ai volontairement pas fait pour montrer qu'ils non absolument rien à voir avec les mêmes paramètres de la fonction New

    Maintenant, pour ce qui est de simplifier le constructeur (simplification toute relative dans le cas présent, mais c'est un exercice), on part du principe que, à partir du moment ou une méthode existe pour initialiser nos variables internes, ici NomTitulaire et PrenomTitulaire, on ne va pas les initialiser nous dans le constructeur mais plutôt appeler la méthode dédiée qui le fera à notre place.

    Donc dans notre constructeur, on va simplement remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            NomTitulaire = PNomtitulaire
            PrenomTitulaire = PPrenomTitulaire
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
            SetTitulaire(PNomtitulaire, PPrenomTitulaire)
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Bonjour sevyc64 et merci pour votre reponse qui pour moi est vraiment vraiment tres detaillée.
    donc je reviens a votre post,
    quand vous dites Procedure c'est bien Sub n'est-ce pas? (sur vb 2008 procedure n'existe pas :s donc je pense que une procedure est une Sub qui travaille silencieusement en arriere plan)
    donc j'ai fait ce que vous m'avez dicté et je ne comprends pas un endroit.
    avec ce sub settitulaire comment fait-on pour modifier le nom et le prenom du titulaire sur le programme principal?
    j'ai bien essayé de le modifier sur le prog principal mais je n'y suis pas parvenu :S
    bien que ce n'est pas demandé sur le devoir je cherche a comprendre ce que je fais et le fonctionnement.
    car avec property de mon ancien message j'arrivais a modifier le nom et le renvoyer, mais maintenant je bloque.

    En vous remerciant,
    Cordialement

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    re bonjour ^^

    Donc la en gros mon souci c'est que je n'arrive plus a lire le nom et prenom du titulaire du compte :S
    j'ai crée une methode (function ^^ ):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     Public Function Gettitulaire() As String
            Gettitulaire = NomTitulaire
            Gettitulaire = PrenomTitulaire
        End Function

    Mais quand je l'appelle via le prog principal il ne me lit plus le nom DUPONT et Jean :S

  5. #5
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 193
    Points : 28 077
    Points
    28 077
    Par défaut
    Oui procédure se dit Sub en VB, c'est un héritage des anciens basics ou les programmes étaient divisés en routine principale et en Subroutine

    Pour l'utiliser, tu l'utilise exactement de la même manière que GetPrenomTitulaire par exemple.

    J'imagine que tu dois avoir quelque chose du genre dans ton programme principal
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Dim InstanceClasse as TaClasse
    ...
    quelqueChose = InstanceClasse.GetPrenomTitulaire
    De la même manière tu pourras faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    InstanceClasse.SetTitulaire("Dupond", "Toto")
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  6. #6
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 193
    Points : 28 077
    Points
    28 077
    Par défaut
    Par exemple, ta classe CompteBanquaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    Public Class CompteBancaire
      Private NomTitulaire As String
      Private PrenomTitulaire As String
      Private DateOuverture As Date
      Private TypeCompte As String
      Private NbOperations As Integer
      Private Solde As Double
     
      Public Function GetprenomTtulaire() As String
        GetprenomTtulaire = PrenomTitulaire
      End Function
      Public Function GetNomtitulaire() As String
        GetNomtitulaire = NomTitulaire
      End Function
     
      Public Function GetTitulaire() As String
        GetTitulaire = GetNomtitulaire() + " " + GetprenomTtulaire()
      End Function
     
      Public Sub SetTitulaire(nom As String, prenom As String)
        PrenomTitulaire = prenom
        NomTitulaire = nom
      End Sub
     
     
      Public Sub New(ByVal PNomtitulaire As String, ByVal PPrenomTitulaire As String, ByVal PDateOuverture As Date, ByVal PTypeCompte As String)
        'NomTitulaire = PNomtitulaire
        'PrenomTitulaire = PPrenomTitulaire
        SetTitulaire(PNomtitulaire, PPrenomTitulaire)
     
        DateOuverture = PDateOuverture
        TypeCompte = PTypeCompte
        NbOperations = 0
        Solde = 0
      End Sub
    End Class
    Un exemple d'utilisation dans le programme principal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        Dim MonCompte As CompteBancaire
     
        MonCompte = New CompteBancaire("Dupond", "Alfred", New Date(2015, 1, 1), "Type")
        MessageBox.Show("Compte appartenant à " + MonCompte.GetprenomTtulaire + " " + MonCompte.GetNomtitulaire)
        MessageBox.Show("Titulaire du compte : "+MonCompte.GetTitulaire)
     
        MonCompte.SetTitulaire("Martin", "Henri")
        MessageBox.Show("Compte appartenant à " + MonCompte.GetprenomTtulaire + " " + MonCompte.GetNomtitulaire)
        MessageBox.Show("Titulaire du compte : " + MonCompte.GetTitulaire)
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  7. #7
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 27
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Re bonjour (encore ^^ )
    Sevyc64, apres toutes ces modifications que vous m'avez envoyé j'ai bien tout saisi!
    Je bloquais vraiment sur comment utiliser sub settitulaire :S
    Mais c'est bon! Dieu merci j'ai tout bien enregistré dans ma tête pour pouvoir m'en servir au futur ^^
    et je vous en suis vraiment tres reconnaissante,
    et en meme temps désolée de vous avoir fatigué a ecrire tout le code en ayant omis de joindre le programme principal.

    Tout est ok pour ce devoir, je passe a l'autre et je vous remercie du fond du coeur et vous souhaite une tres bonne continuation ^^
    (Je pense revenir cependant quand je bloque )

    Cordialement,
    Sumeyra.

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

Discussions similaires

  1. VCS - N° de compte bancaire
    Par Tragnee dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 01/03/2007, 15h48
  2. [VBA-E]Projet de compte bancaire personnel
    Par thibaut_chaps dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/12/2006, 23h41
  3. Réponses: 5
    Dernier message: 31/05/2006, 20h06
  4. Algorithme [Gestion d'un compte bancaire]
    Par Laeticia dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 04/02/2005, 10h57
  5. [Modèle Relationnel] Gestion de comptes bancaires.
    Par Elmilouse dans le forum Schéma
    Réponses: 3
    Dernier message: 31/08/2004, 16h08

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