Programmation orienté objet

Fermé
nada - 22 déc. 2006 à 22:01
 Igol - 5 avril 2008 à 14:38
svp kel est la difference entre la fonction et procedure dands la programmation orienté objet??

5 réponses

Utilisateur anonyme
22 déc. 2006 à 23:01
Bonjour,

Les fonctions et les procédures s'expliquent différament
dépendament du languages ( C++, VB, JS, Pascal, etc... ).

Exemple en c++ on ne parle que de fonctions, les procédures
n'existe pas.

L'orienté objets est la tendance relative à tous les languages.

Un objet est constitué de méthodes et de propriétés ainsi que
d'évènement associer à lui-même.

Référence : Structure de données.

Exemple simple :

Dans un probléme posé tu dois tenir compte de la clientèle
d'une entreprise. Or les donées respectives ressemblerait
à ceci :

Non du Client
Prénom du client
Adresse civique du client
Ville du client
État(province, compté,etc...) du client
Pays du client
Téléphone du client.

Pour chacune des ces données tu devras établir des variables
pour poser des actions sur celle-ci.

L'orienté objet nous enseigne à regroupe ces variables dans
un objet.

ex:
Structure Client
    nom
    prenom
    adresse
    ville
    etat
    pays
    telephone
    actif
Fin structure

Il te faudra aussi définir des actions à poser sur la structure
Actions Client
    lire
    ecrire
    ajouter
    détruire
Fin Action


et des évènemets :

Evenement Client
    appel
    plaintes
    liaisons
    facturation
Fin Evenement


Certains language dont le c++ te permette d'integer
tout ceci dans ce qu'on appelle une classe, intégrant
des fonctionnalités comme l'héritage et le polymorphisme.

en c++, tu pourrais par exemple avoir un instruction du
genre.

ptr.client.nom.ecrire = "Lupin"

à l'aide d'un pointeur sur " l'objet" , tu peux accéder aux données
d'une façon sécuritaire et efficace.

Le tout étant toujours de préserver la donné à son état pure.

Lupin
0
cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
4 avril 2008 à 23:32
Bonsoir Lupin.A,

Merci, et bravo pour ce résumé, simple mais éloquent.
0
Utilisateur anonyme
23 déc. 2006 à 10:36
Bonjour,

Comme le dit Lupin.A, ça dépend du langage.

En pascal, une fonction renvoie une valeur (par exemple le résultat de 6+2), alors qu'une procédure ne renvoit rien, elle se contente de faire des instructions.

En C++ il n'y a pas de différence. Si tu veux qu'une fonction ne renvoie rien (comme une procédure en pascal), alors tu peu écrire ça :
void nom_de_la_fonction(argumments)

void signifie que la fonction ne retourne pas de valeur.
0
Utilisateur anonyme
23 déc. 2006 à 14:44
Bonjour,

Je me permet ici une nuance sur le commentaire de Vincent ...


Une procédure ne renvoie rien, je suis tout à fait d'accord.
Toutefois, en VB la procèdure permet de modifier les arguments.

ex:

Principal ()

Dim Valeur As Long
Dim Reponse As Long

    Valeur = 2
    Reponse = 2
    UnTest ( Valeur, Reponse )
    MsgBox ( Valeur  & VbCrLf & Reponse )

End Principal

Sub UnTest ( Byval MaValeur As Long, ByRef Repon As Long )

    Mavaleur = 3
    Repon = ( Mavaleur * Reponse )

End UnTest


Dans cet exemple, les mots importants de la procédure sont :
------ ByVal -------- et --------- ByRef )

L'intruction [ MsgBox ( Valeur & VbCrLf & Reponse ) ]
donnera comme résultat :

2
6

donc ByVal ne modifie par la variable à l'instar de ByRef
qui aura modifié la valeur de Reponse au retour de la procédure.

Mes notions de c++ sont loin, mais il me semble que le
même principe s'applique si la fonction se défini comme ceci:

void MaFonction ( Char MaVariable )
{
...

}

au retour la valeur de Mavariable aura changé

à l'intar de :

void MaFonction (Const Char MaVariable )
{
...

}

alors q'ici au retour la valeur de Mavariable n'aura pas changé.
Bien entendu, le prototype de fonction doit reflèter cette nuance.

En toute amitié.

Lupin
0
bonjour, SVP je voudrais des exercices d'initiation classes et objet sous pascal/objet ou delphij'en ai vraiment besoin merci pour votre aide
0
Salut,

Tu as des exercices Pascal ici : https://pascal.developpez.com/cours/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
does01 Messages postés 122 Date d'inscription lundi 24 décembre 2007 Statut Membre Dernière intervention 5 avril 2010 12
4 avril 2008 à 23:56
tt simplement fonction a un retourne un type prémitife ( entier , booleen.....) mais procedure ne retourne aucone choses
0