Programmation orientée objet est devenue un paradigme dans le développement de logiciels en tant que programmeurs informatiques ont appris les avantages de la gestion du code de manière modulaire . En définissant des «objets» qui représentent des informations le programmeur utilise tout au long du programme , le programmeur , et d'autres programmeurs , peut construire à partir de ces objets pour créer des logiciels plus complexes. Au cœur du développement objet - logiciel sont les concepts d'encapsulation des données et de l'abstraction , avec les notions d' héritage et le polymorphisme . Encapsulation
Lors de l'écriture des classes , les bonnes pratiques de programmation orientée objet nécessite que les programmeurs " encapsuler " données loin de l'utilisateur de l'objet. Cela signifie que toutes les données ou une fonction au sein d'une classe ne doit pas être accessible à l'utilisateur sans modification du programmateur. Un bon exemple de ceci sont "get" et les fonctions "set " intégrés dans la plupart des classes . Ces fonctions contrôlent la façon dont un utilisateur peut accéder aux variables de données dans un objet, et faire en sorte que toutes les données peuvent être considérées comme légitimes à l'emploi. Cela limite l' inquiétude sur les données corrompues, ou la manipulation illégale de données par l'utilisateur.
Abstraction
Un des avantages de la programmation orientée objet , c'est qu'il supprime l'utilisateur de l' exigence de savoir comment d'autres œuvres de code. Cet avantage , appelé abstraction, signifie que l'utilisateur la mise en œuvre d'un objet créé par un autre programmeur pour effectuer une tâche particulière n'a pas besoin de savoir comment cet objet remplit sa tâche. De cette façon , l'utilisateur peut se concentrer sur leurs propres problèmes, plutôt que de s'inquiéter de la mise en œuvre d'un objet qu'ils pourraient vouloir utiliser . Cela permet aux programmeurs de créer des logiciels plus en plus complexe des objets plus petits .
Héritage
Un autre avantage de la programmation orientée objet est l'héritage , qui permet également aux programmeurs pour construire des programmes plus complexes à partir de pièces simples. L'héritage est la manière dont les objets fonctionnalité «hériter» d'autres objets , peaufiner les adapter à leurs besoins. Par exemple, un objet «professeur» pourrait hériter de sa fonctionnalité d'un objet " personne " , parce que l'enseignant est une personne et exige de toutes les fonctionnalités de l'objet de personne (avec des fonctions supplémentaires d'un enseignant). De cette façon , le programmeur de l'objet de l'enseignant n'a pas à réécrire l'objet de personne juste l'utiliser pour l'objet de l'enseignant , elle ne peut tout simplement avoir l'objet de professeur d'hériter de ses fonctions de l'objet de personne
. polymorphisme
liens polymorphisme avec l'héritage, en ce qu'elle est la manière dont un objet qui hérite d'un autre objet interagit avec cet objet «de base» . Par exemple , l'objet de l'enseignant pourrait hériter de certaines fonctions de son objet de base ( personne ), mais changer l'un d'eux . L'objet de l'enseignant peut encore utiliser les fonctions de la classe de base avec sa propre version de la fonction qu'elle change. En outre, au cours de l'exécution du programme , un utilisateur peut déclarer une variable pour contenir un objet de personne , mais plus tard, le programme décide qu'il a besoin d'un objet enseignant en particulier. Dans ce cas, la variable mise de côté pour la personne objet peut contenir un objet de professeur , parce qu'un enseignant hérite ( ou est) un objet de personne .