<!--:fr-->[poo php] introduction<!--:-->

[poo php] introduction

Début d’une nouvelle série sur l’utilisation de la programmation orientée objet (POO) et son implémentation avec php5.

Tout d’abord qu’est ce que c’est que la POO.

C’est un concept de programmation qui s’oppose avec la programmation procédurale. Classiquement nous programmons avec des fonctions et des variables. Fonctions qui appellent d’autres fonctions, etc etc. En C par exemple on code de cette manière. Et malheureusement beaucoup trop en php aussi.

Avec la POO au lieu de créer des fonctions à tout va vous regroupez vos fonctions et variables en entités logiques. Par exemple si vous voulez representer une voiture avant de lire ce tuto vous auriez (à la rigueur) crée un fichier voiture.php puis aurez mis dedans toutes vos fonctions : demarrer(), arreter(), passerVitesseSup(), retrograder(), etc et vos variables : niveauCarburant, nbPortes, couleur, marque, modelé, etc. Et bien aujourd’hui toutes ces fonctions et variables seront regroupées dans une entité logique. Alors pour le moment vous ne voyez pas de différences…Donc avant d’aller plus loin nous allons voir un peu de vocabulaire.

Notre entité logique s’appelle une classe. C’est en quelques sortes un moule à objet. Autrement dit nous avons une classe voiture qui va nous permettre de créer des objets « voiture ». On dit alors qu’un objet est une instance d’une classe.

Une classe est composée de deux choses : des attributs et des méthodes. Les attributs sont les variables de la classe, ici nous aurions : niveauCarburant, nbPortes, couleur, etc… Tandis que les méthodes sont les fonctions de la classe. Dans notre cas : demarrer(), arreter(),…

Une fois que nous avons notre classe, nous voullons l’instancier pour obtenir des objets. Au moment de l’instance le constructeur de la classe est appelé. Le constructeur est en fait une méthode qui est automatiquement appelé lors de l’instance. En php5 elle s’appelle toujours __construct(). Dans d’autre langages (java, php4,…) le constructeur porte le même nom que la classe. Ce constructeur permet notamment d’initialiser les attributs de l’objet. Ainsi nous pourrions avoir plusieurs objets voitures ayant des attributs différents. Par exemple une opel astra avec un reservoir vide et une renault safrane avec un reservoir plein. Ces deux objets seront en fait deux instances différentes de la même classe.

Prochain billet : première classe.

Did you enjoy this post?

If so, would you please consider sharing it with the world

User Responses

3 Responses and Counting...

  1. who-design.fr

    janvier 28, 2009

    Antoine Guiral : apprenti du web 2.0 : [poo php] introduction…

    Premier article d’une série sur la poo en php….

  2. alone92

    janvier 28, 2009

    vraiment très interessant, j’avais justement du mal a comprendre la notion de POO

  3. Antoine

    janvier 28, 2009

    Merci :)
    J’ai abordé d’autres concepts liés à la poo, notamment le pattern factory. Je suis en ce moment en train de rédiger le prochain article sur l’implementation objet de mysql (mysqli) ce qui nos ammenera a voir le pattern singleton. De quoi partir sur de bonnes bases en objet :) et en php!

    A bientôt :)

Leave a Reply

Default User

Your Name

janvier 28, 2009

* Name, Email, and Comment are Required

Get Adobe Flash playerPlugin by wpburn.com wordpress themes