CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Comment comprendre l'abstraction et les interfaces ...

89ron
89ron
Niveau 10
06 août 2016 à 07:24:08

Pour repondre a l'auteur en C++, les interfaces et les classes abstraites c'est techniquement la meme chose sauf que selon le cas où l'on va les utiliser cela portera un nom differents.

La classes abstraite intervient souvent apres la creation des classes classique : Ca vient des math en fait c'est le concept de la factorisation (developper/factoriser/identitee remarquable... tout ca) en programmation on parle souvent de Refactor.

Ademetons tu creer deux classes Voiture et Camion, et tu t'appercois que les deux clases ont beaucoup d'elements ou de caracteristique en communs et bien tu les regroupes dans une classe parente (bon faut avoir compris la notion d'heritage des classes auparavant), que l'on appellera la Class Vehicule.

Et bien comme il n'existe pas de vehicule a proprement parler dans la realite (le vehicule est un donc une notion abstraite ) alors cette class ne seras jamais instancier et du coup la Classe Vehicule devient abstraite.

Le fait de mettre une fonction ou methode virtuel pure sert juste d'indicateur technique au compilateur pour empecher toutes instantiation de la classe par megarde.

Les interfaces servent surtout quand on veux faire de l'heritage multiple sans tomber sur des problemes complexes que l'on trouve en faisant de l'heritage multiples avec des classes ordinaires. (Les interfaces sont moins maelables mais le code est plus facile a lire et a entretenir.)

TLDR: Les interfaces et classes abstraite servent surtout a rendre le code source plus lisible et facile a maintenir, c'est juste de l'organisation.

DontColleMyNem
DontColleMyNem
Niveau 10
06 août 2016 à 22:04:44

Je conseille vivement de commencer la POO avec Java ou C#, C++ est trop anarchiste à mon goût.

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware