Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Que choisir : "Property Get" ou "Function" ? [ Divers / Trucs & Astuces ] (PROGRAMMIX)

jeudi 18 septembre 2008 à 08:45:16 | Que choisir : "Property Get" ou "Function" ?

PROGRAMMIX

Bonjour,

Je recommence à programmer en tentant l'utilisation de classes et collection.

En tapant mon code à plusieurs jours d'intervalle, je me suis rendu compte que j'avais créé les procédures suivantes :

Public Function NbreParAn(Optional ByVal annee As String) As Integer
    Dim a As clsAccident
    Dim x As Integer
    If annee = "" Then
        x = maCollection.Count
    Else
        For Each a In maCollection
            If Year(a.Jour) = annee Then
                x = x + 1
            End If
        Next
    End If
    NbreParAn = x
End Function

Public Property Get NbreAccidentsGrave() As Integer
    NbreAccidentsGrave = variableNbreAccidentGrave
End Property

La question est donc la suivante : quand utiliser/préférer une propriété à une fonction ?

N'étant pas encore un routinier des modules de classe, merci de répondre "comme si j'avais 5 ans".


Programmix

jeudi 18 septembre 2008 à 09:09:41 | Re : Que choisir : "Property Get" ou "Function" ?

Renfield

Administrateur CodeS-SourceS
c'est question perso...
en gros, de ce "qui se fait"...

tes dex exemples seraient a mettre en Property.
En gros, si dans le nom tu mettrais un verbe autre que GET ou LET ... ben c'est une fonction.

fondamentalement, y'a aucune difference...


jeudi 18 septembre 2008 à 09:24:15 | Re : Que choisir : "Property Get" ou "Function" ?

PROGRAMMIX

Tu dis que mes deux exemples seraient à mettre en Property, mais dans le cas d'une recherche par année, je suis obligé de passer une variable.  Or peut-on passer une variable à une Property Get ?

Programmix

jeudi 18 septembre 2008 à 21:02:39 | Re : Que choisir : "Property Get" ou "Function" ?

Kevin.Ory

Salut,
Moi il me semble qu'il y a une règle qui semble suivie dans le framework, et que j'utilise moi-même:

- Un Property Get permet de récupérer une valeur (normalement très rapide)
- Une Fonction effectue une tâche puis renvois un résultat (normalement plutôt lent)

Mais il est clair que quelque-fois ce concept peut être confus...



jeudi 18 septembre 2008 à 21:06:04 | Re : Que choisir : "Property Get" ou "Function" ?

Kevin.Ory

"Or peut-on passer une variable à une Property Get ?"
Non si ce n'est un index ou une clé, qui sera aussi présente pour le Let et qui est utilisé pour accéder à des collections.

Tu parle de recherche, c'est donc pour moi typiquement le 2ème cas de mon message précédent: une fonction.

jeudi 18 septembre 2008 à 23:56:23 | Re : Que choisir : "Property Get" ou "Function" ?

thierry la fronde

Membre Club
Réponse acceptée !
On utilise les property pour récupérer (ou modifier) la valeur une DONNEE  membre de la classe.
On utilisera une fonction pour un traitement ou un calcul particulier.

De plus la propriété permet de modifier la valeur de la donnée membre de la classe de manière simple. Ce qui n'est pas le rôle d'une fonction
L'idée étant que toutes les données membres d'une classe sont private et inaccessible (principe d'un langage objet). Pour accéder aux valeurs de ces données membres, on utilisera donc une propriété (property)
Ceci dit VB6 n'est pas un langage objet, VB.NET si.


thierry la fronde

vendredi 19 septembre 2008 à 16:52:27 | Re : Que choisir : "Property Get" ou "Function" ?

PROGRAMMIX

Merci pour toutes ces info complémentaires qui confortent ce que je pensais.

Programmix



Cette discussion est classé dans : function, annee, get, property, if


Répondre à ce message

Sujets en rapport avec ce message

Transmission d'un tableau par property get [ par jeffb ] Bonjour,comment peut on passer un tableau par l'intermédaire d'un property get et comment peut on le récupèrer avec asp?merci de vos réponses. Function, Sub, Property, quelles différences ? [ par GlanduSchmoldu ] Je n'ais jusqu'à présent utilisé que des fonctions dans mes programmes, mais j'aimerais savoir les avantages et inconvenients des sub et property, not Création d'attributs sur controle [ par Emcy ] Bonjours, j'ai créer un composant à partir du controle Label. Je voudrais ajouter les propriétés Grid.X et Grid.YLe code ci-dessous fonctionne (j'arri Property Get & Let ??????? [ par Ophidian ] Salut !Quand on fait un controle soi-meme, on peut lui appliquer différentes propriétés (ex : Pour une PictureBox, on a les propriétés suivantes : pic Property Get & Let dans un OCX [ par glg ] J'aimerai proposer dans cette procédure une liste de valeurs définies sous forme de liste dans l'ocx.L'exemple de visualbasic n'est pas très claire. Polymorphisme en VB6 [ par moot1983 ] Bonjour,J'essaie actuellement de réaliser une interface en VB6 mais j'ai un message d'erreur à la compilation. Je n'ai jamais fait ça en VB alors je m Property [ par forum_ma ] Private group As Integer = 3(...)<System.Com erreur dans l'addition [ par andregoub ] Bonjourj'ai fait un petit Programme en me servant de l'objet class j'ai une erreur au niveau de l'addition au lieu d'additionnerle résultat est exempl un For Each que ne fonctionne pas avec une collection maison ! [ par EMMANUELTAVE ] bonsoir, Je transforme une application VB6 en VB2005 : Ouf je m'acroche !voici ma classe de base : rien de tres .....< withEvents [ par lispo ] Bonjour a tous,J 'ai crée une classe cercle(Vba AutoCad)mais je voudrais lui attribuer un evenement(ex: apparition d'un msgbox)voila comment j'ai fait


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,546 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.