Programation orientée aux objets
Divers / / July 04, 2021
Par Guillem Alsina González, en oct. 2017
En plus des langues de programmation, il existe différentes manières ou philosophies d'aborder la conception d'un programme de Logiciel, formes qui se reflètent dans les différents langages, qui les embrassent pour satisfaire les exigences d'un certain type de tâches ou d'un groupe de programmeurs. L'une de ces philosophies est l'orientation objet.
La programmation orientée objet consiste à considérer comme "objets" les sujets d'intérêt du programme, chaque type d'élément différent est défini avec ses données et les méthodes de traitement de celles-ci.
Cela permet, fondamentalement, de traiter ces objets comme un type de données de plus, sur lequel appliquer des méthodes et créer des constructions qui effectueront des calculs et des manipulations. Ces nouveaux types de données sont construits à partir des types de base inclus dans le langage de programmation et les opérations sont déclarées comme procédures ou fonctions.
Une caractéristique notable qui permet ce modèle de développement est ce qu'on appelle « l'héritage », qui consiste à créer de nouveaux objets à partir des précédents, en modifiant ou en développant à la fois leurs attributs et les méthodes à exercer sur elles ou ils.
Bien que la programmation orientée objet gagne en popularité dans le monde de la programmation depuis la fin les années 80 et début des années 90, la vérité est que sa création remonte beaucoup plus loin, à la fin des années 60.
Le déclencheur du succès de la programmation orientée objet a été, dans une large mesure, la vulgarisation des environnements d'utilisateurs graphiques tels que Windows, puisque le paradigme facilite grandement la création de Ressources graphiques, dérivez-les dans d'autres ressources similaires (via les patrimoine) et travailler avec des méthodes qui répondent aux actions de l'utilisateur sur les éléments.
De là, il est devenu le paradigme dominant, étant celui utilisé par un plus grand nombre de langues, et le plus réussi parmi les programmeurs, une situation qui a duré jusqu'à aujourd'hui.
Les différents types d'objets doivent être déclarés en tant que classe à un point initial du programme avant de pouvoir instancier des objets appartenant à cette classe.
De cette façon, le programme est structuré de manière compréhensible pour quelqu'un qui l'examine de l'extérieur, en suivant une séquence logique.
Pour rendre ces concepts compréhensibles, prenons un exemple: un programme de administration du personnel dans une entreprise.
Une classe pourrait être celle de travailleur, avec des attributs tels que nom, prénom, numéro de sécurité sociale, poste, salaire, etc. Chaque objet instancié serait un travailleur différent. Par exemple, nous pourrions créer une liste pour chaque service, ou une liste globale de travailleurs, selon la façon de gérer et penser le programme.
Les méthodes à appliquer à cette classe pourraient être multiples, telles que "l'augmentation de salaire", qui multiplierait le salaire par un certain pourcentage, ou attribuerait jours de vacances, ce qui insérerait des marques de vacances dans le calendrier de chaque travailleur, qui différeront entre les travailleurs afin de profiter décalages.
Cette classe pourrait donner lieu, par héritage, à une nouvelle classe appelée « boursiers », qui n'avait pas d'attribut tel que le salaire, mais un ou plusieurs liés à la formation, statut Les exigences légales des stagiaires pourraient obliger l'entreprise à les former.
Au fil des ans, de nombreux langages de programmation sont apparus qui adoptent ouvertement le paradigme orienté objet comme méthode de travail.
Le langage le plus connu est peut-être le C++, qui donne au C traditionnel une patine orientée objet.
Cependant, il existe d'autres langages, également bien connus, qui suivent le même paradigme orienté objet, tels que Java, Visual Basic .NET (développé par Microsoft), Objective-C (utilisé principalement dans les systèmes Apple), et les langages largement utilisés dans les applications Internet telles que Ruby, Python, Perl ou PHP.
Photo: Fotolia - RMS164 / Sentavio
Sujets en programmation orientée objet