French [SOLUTIONNE] Notion de classes ?

lemonisdead

Well-Known Member
Licensed User
Longtime User
Bonjour à tous,

Je suis très perdue à la lecture du tutoriel sur les classes (c'est une notion informatique que je n'ai jamais apprise).
Mes recherches sur le web pour essayer de comprendre ce que c'est me mènent vers des cours assez compliqués.
Et je n'arrive pas à appréhender la notion à partir de classes déjà écrites dans B4A (B4J ça va à peu près).

Est-ce que par hasard vous auriez, un lien ou bien la référence d'un bouquin ou un "je ne sais quoi" qui me permettraient d'apprendre cette notion ?

En outre, ai-je bien compris que la notion de classe me permettrait de générer des objets à partir d'un modèle défini ?

Merci d'avance pour toute piste
 
Last edited:

lemonisdead

Well-Known Member
Licensed User
Longtime User
Après avoir écrit le sujet, j'ai eu une révélation comprenant que si j'arrivais à écrire une classe B4J je devais être capable d'en écrire une identique en B4A...
Donc mes tentatives précédentes étaient buggées.
Sujet clos. Merci :)
 

lemonisdead

Well-Known Member
Licensed User
Longtime User
Bonjour Klaus,

Oui effectivement mais il y a longtemps. Je vais également m'y replonger. Merci beaucoup :)
 

Informatix

Expert
Licensed User
Longtime User
Une classe, c'est un objet virtuel, c'est-à-dire que ça peut contenir des données et faire certaines choses, mais pas avant d'être instancié (d'avoir une existence concrète en mémoire). Un exemple va t'aider à y voir clair:
J'ai une classe "ClsRond". ClsRond a deux propriétés (que je vais initialiser avec la fonction Initialize de la classe): position du centre, longueur du rayon. ClsRond a deux méthodes (deux subs): Initialize (obligatoire) et Dessiner. Le but de la classe est de dessiner des ronds. Tel quel, ClsRond n'occupe pas de mémoire et ne sert pas à grand chose car si j'appelle l'une des deux fonctions directement, je vais avoir une erreur. Il faut que je l'instancie. Exemple: Dim MonRond as ClsRond. Ainsi, un objet réel est créé avec les propriétés et les méthodes de la classe. A partir de là, je peux appeler Initialize, puis Dessiner.
L'intérêt de la classe, c'est que je peux créer plusieurs objets différents sur le même modèle. C'est pourquoi on fait parfois une analogie entre les classes et les moules (à gâteau, pas les mollusques). En mettant de la pâte dans le moule, on obtient toujours la même forme. Chaque gâteau peut être décoré différemment ou mangé par des gens différents, ça n'a pas d'importance. Chaque objet a sa vie propre.
Quand tu supprimes une instance de la classe (MonRond = null), tu ne supprimes pas la classe car la classe n'a qu'une existence virtuelle. Manger le gâteau ne supprime pas le moule.
Cette façon de présenter les classes n'est pas très orthodoxe ni tout à fait exacte, mais j'espère qu'elle t'aura aidé à y voir plus clair.
 

hbruno

Member
Licensed User
Longtime User
"Cette façon de présenter les classes n'est pas très orthodoxe ni tout à fait exacte"
... mais j'aime bien quand même...
 

Laurent95

Active Member
Licensed User
Longtime User
Cette façon de présenter les classes n'est pas très orthodoxe ni tout à fait exacte, mais j'espère qu'elle t'aura aidé à y voir plus clair.

Lollllll, excellent je ne m'étais jamais autant régalé en lisant un billet sur de la prog.
Gourmand va ;)
 
Top