|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 5 ![]() |
Bonjour !
Voila je suis en train de lire la derniere edition de PHP 5 Avancé, et j'ai lu la partie concernant le mot clé 'final' et 'interface' de la POO. Seulement, je n'ai pas compris l'utilité de ca, a part rajouter des contraintes ( ce qui n'est peut etre pas si mal ) cela peut il servir a autre chose ? Merci d'eclaircir ma lanterne |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
regardes ici, tu auras des exemple d'utilisation des interfaces :
http://alain-sahli.developpez.com/tu...es-interfaces/
__________________
Modérateur PHP |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 5 ![]() |
J'ai lut l'article et je ne vois pas l'utilité de 'Interface TextEditor'.
Sans cet interface, l'exemple marcherai quand meme. Ou alors c'est moi qui ait rien compris ?
|
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : janvier 2005 Messages : 2 288 ![]() |
L'interface permet de définir une liste de fonctions/méthodes qu'une classe doit posséder pour répondre à un besoin.
Dans l'exemple, pour faire une classe d'éditeur de texte, ta classe doit entre autres posséder la méthode AddParagraph(); Du coup, tu définis une interface dans ton projet, et plusieurs personnes peuvent developper leur propre classe qui répondront bien aux critères imposés par ton interface. Ca marche sans, bien sur, mais tu dois t'assurer en lisant ton code que ta classe a toutes les méthodes demandées. Alors qu'avec une interface tu auras une erreur qui te dira "attention cette classe ne possède pas la méthode XXXX" Dans mon cas j'avais fait un projet qui appliquait un algorithme a des graphes pour le traitement d'images. Comme on était plusieurs chacun développait sa propre classe de graphes (gestion avec des listes, des tableaux, un fichier texte contenant les sommets, etc) pour comparer les performances. Le plus simple a donc été de se mettre d'accord sur une interface sur le papier pour que tout le monde ait les memes méthodes (ta solution). On s'est vite apercus que c'était galère parce que parfois l'interface évoluait, des gens oubliaient des données etc, et on en est venus a définir une vraie interface (en code) que chaque classe devait implémenter (au sens du code) du coup le programme te disait directement quand ta classe ne répondait pas aux critères imposés par l'interface |
|
|
00
|
|
|
#5 | |
|
Invité de passage
![]() Inscription : février 2007 Messages : 5 ![]() |
ok d'accord j'ai compris
![]() Merci ![]() Juste une petite precision, quand tu dis : Citation:
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com