Explication POO pour débutant
Animateur WDF
Inscrit:
22/11/2002 11:40
De Toulon
Post(s): 126
bonjour
Je continue mon apprentissage de l'OO mais là j'ai besoin d'aide car plus je lis moins je comprends.

En POO on dit pour pouvoir pratiquer l'heritage faire appel a des classe de base ou super classe ou encore classe abstraites. Ok sur le principe.

Mais on dit aussi que les classes abtraites ne peuvent pas être instancées. alors ma question est. On fait comment pour les utiliser??

Si vous avez un bout ou des bouts de code pour imager cet état de fait je suis preneur car là je nage
Merci

William

Contribution le : 21/04/2004 08:37
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Salut William

Dans le cadre d'un héritage, les deux classes interagissent comme des poupée gigognes. La classe que l'in instancie est la 'plus petite' classe : celle qui hérite des méthodes et membres des classes 'abstraites'

Je te renvoies à cVBaExterne qui hérite de cExcel issue des exemples... jamais en exmploitation on utilise une instance de cExcel.

note : c'est principalement à cela que servent les exemples en téléchargements : illuster les cas (en plus de proposer des fonctionnalités)

Contribution le : 21/04/2004 09:00
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
22/11/2002 11:40
De Toulon
Post(s): 126
Ok
Maintenant que je sais qu'il y a un exemple dans cette classe je regarde dans la soirée.

best
William

Contribution le : 21/04/2004 09:06
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Stagiaire WDF
Inscrit:
19/04/2004 14:57
Post(s): 20
Exemple d'utilisation de classe abstraite en pseudo-code:

class abstraite vehicule:
{
nomvehicule est une chaine
typedeplacement est une chaine
consommation est un entier

methode abstraite calculconsommation(nbKilometre) renvoie entier

//pour changer la conso du vehicule car + un vehicule est vieux plus il consomme ou apres une reparation il consomme moins
methode abstraite changeconsommation(NvllConso)
}

Tu ne pourras pour autant pas crée de nouveau vehicule, cette classe de servira de modele en fait, imagine maintenant les classes que tu peux creer a partir de cette classe abstraite :

class avion herite de vehicule:
{
--on peut ajouter des attributs et des methodes specifiques aux avions

}

class voiture herite de vehicule:
{
}

class bateau herite de vehicule:
{
}
tu pourras maintenant creer des vehicules plus specifiques qui utiliseront tous le modele commun(classe abstraite vehicule)


---------------------------------------------
autre exemple

En objet, ce qui est formidable c est qu tu peux construire ce que tu veux a des niveaux differents

tu cree une classe brique
tu dit qu'une classe mur est composé de briques
tu dit qu'un etage est composé de murs
tu dit qu'un immeuble est compose d'etage

tu dit qu'une ville est composé d'immeuble
tu dit qu'un pays est composé de ville
tu dit qu'un continent est composé de pays
tu dit qu'une planete est composé de continent

--> je pense que tu m'as suivi mais c est vraiment cela tu voix, tu gagne a chaque fois en niveau de reflexion, du coup dans mon exemple, tu pourrais créer un systeme solaire tres facilement. Alors qu'autrement ca t aurait pris bcp de temps

Ca viendra avec la pratique, et tu te rendras compte que la POO est ce qu'il y a de plus simple et de plus puissant, a condition de bien definir chaque choses.

J'espere que je te motiverai pour pas que tu laches prises, il faut de la pratique tout de meme, et aprés ca devient presque un jeu!

tcho william

Contribution le : 21/04/2004 17:15
_________________
esylanA-ture pouvait nous aider à programmer, on aurait jamais de problème.........
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
22/11/2002 11:40
De Toulon
Post(s): 126
Ok
c'est la commande ou je ne sais pas comment vous l'appelez "herite" qui m'avait échappé

Merci
William

Contribution le : 21/04/2004 17:25
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Classe "abstraite" (on dira parente en WLanguage) :
vehicule est une classe
   ...membres vhéhicules...
fin
...(méthodes véhicules)...

Héritage :
voiture est une classe
   HERITE DE VEHICULE
   ...membres voitures...
fin
...(méthodes voitures)...

utilisation :
V1 est une voiture

V1:Methode_Voiture() // appel d'une méthode de la classe
V1:Methode_Véhicule() // appel d'une méthode de la classe héritée (pas d'instance... rien)




Contribution le : 21/04/2004 19:51
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
22/11/2002 11:40
De Toulon
Post(s): 126
Bonsoir
Merci pour toutes ces explications je me sens porté
On va pouvoir se jeter à corps perdu dans la Poo maintenant.

Question encore. Quel est le but de la POO.

Ecrire toute une application en OO car au fond du fond cela doit être possible en faisant interagir tous les objets. (Je suis dans la lecture de pensez en java) mais là je n'ai pas assez de recul pour appréhender le comment de la maintenance de la dite appli. (Certainement plus simple d?après ce que je vois avec toutes mes procédures que je stocke un peu comme des librairies)

Ou

Garder une bonne partie en procédural et ne faire que ce que l?on sait récupérable par d?autres dévs ??

La réponse doit être dans le temps du dév en POO. Encore très peu connu par moi pour le moment

Voilà se sera tout pour aujourd?hui

Longue vie à wdforge.org

William

Contribution le : 21/04/2004 20:23
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Stagiaire WDF
Inscrit:
19/04/2004 14:57
Post(s): 20
...Citation :

william a écrit :

Question encore. Quel est le but de la POO.



alors la, bah c'est de programmer, des fois il vaut mieux essayer de comprendre une chose avant de chercher son but parce que l'on peut vraiment passer a coté...

Mon conseil, ca serait que tu regardes des exemples sur le net et que tu t'exerces un peu pour oter le trouble de la syntaxe et de la logique de la POO, tu verras apres c'est un jeu

Contribution le : 23/04/2004 10:01
_________________
esylanA-ture pouvait nous aider à programmer, on aurait jamais de problème.........
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour Williams

L'avantage de la programmation objet

Quand tu programme en procédural ton code appartient soit à un objet (Fenetre ou bien collection de procedure, quoi que cette derniere est déjà un intermédiaire en le procédurale et la poo.).
donc en procedurale si tu veux l'utiliser sur un autre projet il te faut recopier toutes les procédures et toutes les procédures dépendent l'une de l'autre et arriver à un certain stade cela peut devenir cahotique.

En Poo
Les classes sont stockées dans des fichiers uniques. de plus chaque classe est normallement autonome et en règle générale s'initialise avec des valeurs par défaut dès qu'on les instancies. l'avantage de cette programmation c'est par exemple, que le fait d'exécuter une méthode change automatiquement la valeur de ses propriétés.

Pour moi l'avantage de cette programmation c'est ca clarté d'utilisation : on dit meme proche du monde reel
Car on peut dévellopper en s'arretant que sur le dévelloppement d'un objet le plus distincte soit-il
comme la expliqué esylanA.

Il est plus simple de développer une classe brique puis une classe mur qui manipulent des briques, une classe etage qui manipulent des murs etc...

en procédurale ce serait un travail de titans


Un Chien
-Methode (courrir - sauter - coucher, ...)
-Proprietes (couleur, taille, age etc...)

Contribution le : 23/04/2004 11:05
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
22/11/2002 11:40
De Toulon
Post(s): 126
Bonjour
en attendant vos réponses je me suis jetté dans l'analyse d'une nouveau soft qui devrait avoir besoin d'une connexion Myql mais ça c juste pour le clin d'oiel.

Par contre à fur et à mesure que j'avance dans cette analyse le "regard" OO prends toute son ampleur.

Je crois que cela ne demandera pas beaucoup plus de temps de le faire tout en OO et sa maintenance en sera beaucoup plus simple.

La réponse était "Le tout en POO" doit apporter un avantage

Merci

William

Contribution le : 23/04/2004 11:09
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Anonyme
...
dans le doc en cours de rédation, c'est ce que j'appelle une programmation 'organique'.

la procédurale est une succession de blocs de code...

si on vous a appris à programmé on a du vous dire qu'un programme de plus de 100 ligne est illisible et donc difficile à maintenir. l'idée est alors de créer des routine aussi élémentaire que possible. Ainsi la phase de mise au point est aisée (debuggage) car il suffit alors de valider indépendament des petites quantité de code.
Si ce schéma est possible en procédural, il manque une autre capacité de la poo : la portabilité.
En effet, une classe peut être importée dans une autre projet sans autre forme de procès.
Enfin, comme le précise drcharly93, l'utilisation des instances permet une exploitation différente du code : un même programme peut manipuler plusieurs chiens (selon son exemple)... chose plus complexe à mettre en place en procédurale.

Si la création d'un classe consiste simplement à déclarer des variable (membres) et des procédures (méthodes). C'est dans l'utilisation des objet que réside toute la puissance de la poo :
oChien1 est un Chien(roux,grand,5...)
oChien2 est un Chien(blanc,petit,2...)

oChien1:Assis()
oChien2:Debout()
oChien1:Mordre(oChien2)



Dans les fenêtres, ce style de programmes est trés sérieusement plus lisible que le procédural...
Par conséquent, il convient à merveille dans des équipes de développement où les niveaux diffèrent (les uns créent les classes, les autres les utilisent/adaptent)


Contribution le : 23/04/2004 11:22
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant

Inscrit:
08/10/2003 15:30
De Montfort sur Argens (83)
Post(s): 209
Très intéressant tout cela, je suis comme William en train de me tourner vers la POO et je dois dire que je suis avec passion vos débats, William (mon ami toulonnais) se posent les mêmes questions que moi.
Rbesset est une mine d'infos et j'espère qu'elle ne fermera pas de sitôt comme la dernière mine française (aujourd'hui).

Par ailleurs, est il possible de savoir quand est ce que la doc sur la POO sortira dans les bacs ?

Contribution le : 23/04/2004 11:29
_________________
Cordialement,
Thernius
-------------------------------------------
Itanéa.com, réalisations de logiciels & créations webs......
Créer un fichier PDF de la contribution Imprimer


Re: Explication POO pour débutant
Animateur WDF
Inscrit:
26/06/2002 16:24
De wdforge.org
Post(s): 2822
Merci de l'intéret...
Non, les négociations en cours avec des éléments actifs assurent plutot une pérénnisation de notre activité (voir plus encore si affinité)

C'est une bonne question, n'ayant pas le temps matériel (les lecteurs le la ML et William comprendrons) de piloter aussi ce projet j'invite un co-animateur connaissant notre méthode de travail à prendre le relais pour fédérer les idées... pour info un .Doc (word 2000 = notre format de base) à commencé à circuler sur la chose.


Contribution le : 23/04/2004 16:14
_________________
R&B
Contact, CV.
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2