Obligement - L'Amiga au maximum

Mercredi 24 avril 2024 - 12:33  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

Actualité (récente)
Actualité (archive)
Comparatifs
Dossiers
Entrevues
Matériel (tests)
Matériel (bidouilles)
Points de vue
En pratique
Programmation
Reportages
Quizz
Tests de jeux
Tests de logiciels
Tests de compilations
Trucs et astuces
Articles divers

Articles in english


Réseaux sociaux

Suivez-nous sur X




Liste des jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z,
ALL


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Programmation : C - Gadget, application de la programmation orientée objet
(Article écrit par Batchman et extrait d'A-News (Amiga News) - mars 1989)


Voici un bon moyen d'épater vos copains ou de briller en société : la programmation orientée objet est le dernier style à la mode dans les Universités.

Quels sont ses avantages ?

Au niveau du code généré, aucun. Le programme n'est pas plus rapide ; il occupe autant de mémoire. Mais la source n'est plus du tout du type des programmes C courants. L'intérêt de ce style de programmation est de pouvoir manipuler des objets de tous les types de la même façon, sans se préoccuper justement de leur type.

Ceci induit beaucoup de propriétés mais ne se justifie que dans de grands programmes. Néanmoins, et pour en revenir aux gadgets, nous allons voir comment ce style de programmation peut nous simplifier la vie mais, ne nous leurrons pas, ce n'est qu'un petit aperçu des possibilités.

Les pointeurs

Il faut ici parler des pointeurs de fonction en C car le Chorizo Kid ne l'a pas fait dans ses articles d'initiation.

Une fonction en C se compose de deux parties :
  • Le code, c'est-à-dire les instructions de votre programme.
  • La valeur de retour qui est une variable du type de la fonction (int, char, etc.).
Le principe est que chaque fois que vous appelez votre fonction par f(), vous provoquez son évaluation : le code est exécuté et la valeur de retour est placée dans la variable f(). L'appellation "f" désigne l'adresse de la fonction. Vous pouvez donc manipuler des fonctions par l'intermédiaire de leurs pointeurs.

Maintenant, rappelez-vous comment on sait qu'un gadget est sélectionné : nous avons mis son numéro dans un champ de la structure. Lorsque l'événement survient, on récupère ce numéro, puis appelle la fonction correspondant au gadget par un switch{..}. Pour chaque gadget, le programmeur doit écrire dans le switch l'appel de la fonction à appeler (Cf. cet article).

Imaginez quand votre programme évolue : si vous ajoutez ou enlevez des gadgets, il faut modifier les appels des fonctions de traitement. Or, Vous oublierez toujours de modifier quelque chose dans les switchs, ou ailleurs. Ne rigolez pas, c'est l'intérêt principal de la programmation orientée objet : faciliter la maintenance.

Supposez maintenant que vous placiez dans chaque gadget un pointeur sur la fonction qu'il déclenche. Lorsque vous êtes prévenu qu'un gadget a été activé, vous appelez directement cette fonction ; vous n'avez plus besoin de déterminer quel est le gadget activé. Dans les langages orientés objet, on appelle cette fonction une méthode.

Pour résumer, il n'y a plus besoin de switch ; quand un gadget change d'état, on reçoit l'adresse de sa structure qui contient l'adresse de la fonction à appeler. Ouf ! Ce sera plus clair le mois prochain dans le programme d'exemple car, depuis que j'écris, la place commence à se faire rare. Retenez quand même l'intérêt essentiel de ce principe : si vous voulez ajouter un gadget, vous ajoutez sa structure et sa méthode : vous n'avez plus à toucher au switch puisqu'il n'existe plus !

Ceci n'est qu'un petit aperçu des possibilités de la programmation orientée objet (on dit aussi dirigée par les données) mais il montre sur notre sujet que cela facilite grandement la maintenance des programmes.


[Retour en haut] / [Retour aux articles] [Article précédent] / [Article suivant]