La programmation orientée objet (ou POO en abrégécorrespond à une autre manière d’imaginer, de construire et d’organiser son code.
Jusqu’à présent, nous avons codé de manière procédurale, c’est-à-dire en écrivant une suite de procédures et de fonctions dont le rôle était d’effectuer différentes opérations sur des données généralement contenues dans des variables et ceci dans leur ordre d’écriture dans le script.
La programmation orientée objet est une façon différente d’écrire et d’arranger son code autour de ce qu’on appelle des objets. Un objet est une entité qui va pouvoir contenir un ensemble de fonctions et de variables.
L’idée de la programmation orientée objet va donc être de grouper des parties de code qui servent à effectuer une tâche précise ensemble au sein d’objets afin d’obtenir une nouvelle organisation du code.
Les intérêts principaux de la programmation orientée objet vont être une structure générale du code plus claire, plus modulable et plus facile à maintenir et à déboguer.
La programmation orientée objet va introduire des syntaxes différentes de ce qu’on a pu voir jusqu’à présent et c’est l’une des raisons principales pour lesquelles le POO en PHP est vu comme une chose obscure et compliquée par les débutants.
Au final, si vous arrivez à comprendre cette nouvelle syntaxe et si vous faites l’effort de comprendre les nouvelles notions qui vont être amenées, vous allez vous rendre compte que la POO n’est pas si complexe : ce n’est qu’une façon différente de coder qui va amener de nombreux avantages.
Pour vous donner un aperçu des avantages concrets de la POO, rappelez-vous du moment où on a découvert les fonctions prêtes à l’emploi en PHP. Aujourd’hui, on les utilise constamment car celles-ci sont très pratiques : elles vont effectuer une tâche précise sans qu’on ait à imaginer ni à écrire tout le code qui les fait fonctionner.
Maintenant, imaginez qu’on dispose de la même chose avec les objets : ce ne sont plus des fonctions mais des ensembles de fonctions et de variables enfermées dans des objets et qui vont effectuer une tâche complexe qu’on va pouvoir utiliser directement pour commencer à créer des scripts complexes et complets !
La programmation orientée objet se base sur un concept fondamental qui est que tout élément dans un script est un objet ou va pouvoir être considéré comme un objet. Pour comprendre ce qu’est précisément un objet, il faut avant tout comprendre ce qu’est une classe.
Une classe est un ensemble cohérent de code qui contient généralement à la fois des variables et des fonctions et qui va nous servir de plan pour créer des objets. Le but d’une classe va donc être de créer des objets que nous allons ensuite pouvoir manipuler.