Configuration du projet
Fait partie de la section Object Oriented Programming du Journey C de Coddy — leçon 22 sur 61.
Défi
FacileCommençons à construire votre bibliothèque de compte bancaire ! Dans cette première étape, vous allez créer l'interface publique — le fichier d'en-tête qui définit les opérations existantes sans révéler aucun détail d'implémentation.
Vous allez créer deux fichiers pour établir les bases du projet :
account.h: Votre fichier d'en-tête public. C'est ce que les utilisateurs de votre bibliothèque incluront. Déclarez un typeAccountopaque en utilisant une déclaration de type incomplète — pas de corps de structure, juste une déclaration anticipée qui indique au compilateur que le type existe. Ensuite, déclarez les prototypes de fonction pourcreate_account(prend un entier pour l'ID du compte et renvoie un pointeur Account) etdestroy_account(prend un pointeur Account et ne renvoie rien). N'oubliez pas les gardes d'inclusion utilisant le symboleACCOUNT_H.main.c: Un fichier de test simple pour vérifier que votre en-tête se compile correctement. Incluez votre en-tête et affichez un message confirmant que l'interface est prête. Comme nous n'avons pas encore implémenté les fonctions, affichez simplement un message de confirmation — l'implémentation réelle viendra dans la prochaine leçon.
L'idée clé ici est que votre en-tête révèle ce que le module Account peut faire (créer et détruire des comptes) sans montrer comment il stocke les données en interne. Quiconque inclut account.h saura qu'un type Account existe et quelles fonctions sont disponibles, mais ne pourra accéder à aucun champ interne — car vous n'en avez défini aucun dans l'en-tête !
Votre fichier principal doit afficher :
Account interface readyCela prépare le terrain pour le système complet de compte bancaire que vous construirez au cours des prochaines leçons. L'en-tête que vous créez maintenant s'enrichira pour inclure deposit, withdraw, et get_balance au fur et à mesure de votre progression dans le projet.
Essayez vous-même
#include <stdio.h>
#include "account.h"
int main() {
// TODO: Afficher un message confirmant que l'interface est prête
// Le message doit être : "Account interface ready"
return 0;
}
Toutes les leçons de Object Oriented Programming
1Bases de la programmation modulaire
Fichiers d'en-têteGardes d'inclusionFichiers sourcesFonctions statiquesRécapitulatif : Calculatrice modulaire4Encapsulation
Concept des pointeurs opaquesDéfinir des structures opaquesGetters et settersValidation dans les settersRécapitulatif : La boîte secrète2Objets et méthodes
Structs comme objetsLe pointeur 'Self'Rigueur du mot-clé constPointeur vs ValeurMéthodes utilitairesRécapitulatif : Point Manager5Projet : Compte bancaire simple
Configuration du projetImplémentation du compte8Polymorphisme
Pointeurs de fonctions dans les structuresSimulation de méthodesLe concept d'interfaceImplémentation d'interfacesItération polymorphiqueRécapitulatif : Greeter11Patrons de conception en C
Patron SingletonPatron FabriquePatron ItérateurRécapitulatif : Logger Factory3Cycle de vie des objets
Pattern de constructeurPattern de destructeurInitialisation sur la pileCopie profondeRécapitulatif : String Wrapper6Héritage par composition
Imbrication de structLa règle du premier membreAccès aux membres parentsUpcastingRécapitulatif : Hiérarchie des formes9Projet : Dessinateur de formes
Aperçu du projetImplémentation du cercle