Programming with Objects and Classes/fr

From Free Pascal wiki
Jump to navigationJump to search

English (en) français (fr) русский (ru)

Vue d'ensemble

FPC inclut plusieurs extensions dans son langage par rapport à la syntaxe Pascal "standard" pour supporter la Programmation Orientée Objet (POO).

Ces extensions sont décrites dans les chapitres indiqués du guide de référence du langage FPC: http://www.freepascal.org/docs.var. Des liens vers les pages de tutoriel pour chaque concept sont de même inclus ci-dessus. Le Guide de référence du langage comprend des diagrammes sur la syntaxe et d'autres détails ne figurant pas dans ce tutoriel d'introduction. Parmi les quatre caractéristiques du langage mentionnées ci-dessus, Objets et Classes forment la base de la Programmation Orientée Objet (POO) dans FPC et Lazarus. Pour les nouveaux avec la POO, le paragraphe Objets comprend plus d'introduction sur les concepts et le paragraphe Classes minimise la répétition en mettant l'accent sur les similitudes et les différences avec la syntaxe Objets. En général, l'implémentation Classes semble être plus largement utilisée, y compris par les développeurs Delphi et Lazarus. Souvent, le mot "objets" est utilisé pour se référer à ce qui est en fait une "classe" dans le dialecte Classes de la POO dans FPC. Ces documents seront libellés de telle manière à réduire au minimum toute confusion de terminologie, mais en dehors de ce document, souvent, le terme "objet" se réfère à des objets créés à partir d'une Classe. En fait, la bibliothèque d'exécution de FPC (RTL) comprend une bibliothèque de classes avec une classe de base appelée TObject.

Les utilisateurs familiers avec l'ancienne implémentation de la POO de Turbo Pascal peuvent initialement souhaitez sauter la section sur les classes puisque l'implémentation des objets est basée sur l'ancien dialecte de Turbo Pascal. La section sur les Classes devrait être familière pour les utilisateurs de Delphi car elle est fondée sur la syntaxe Delphi. Soyez conscient que certaines des descriptions dans la section Classes peuvent se rapporter à des concepts de la section Objets. Pour les développeurs Macintosh familiarisés avec les différents dialectes en pascal objet d'Apple, THINK et MPW, ni le dialecte des classes ni celui des objets de FPC ne fournissent une voie de migration directe. À partir de Mars 2009, il y a des discussions sur la Liste de diffusion du Pascal pour Mac dans le but de potentiellement fournir quelque soutien du compilateur (nouvelle syntaxe) pour accéder au framework en langage objet C/Cocoa d'Apple.

Notions générales

La POO propose différentes façons de gérer et d'encapsuler les données et de gérer les flux de programmes comparé à d'autres caractéristiques et constructions de langage de programmation. La POO souvent, se prête à la modélisation de certaines applications tels que les interfaces Graphiques utilisateur(GUI's) et les systèmes physiques dans une manière de penser plus naturelle. Cependant la POO n'est pas approprié pour toutes les applications. Le contrôle de programme n'est pas aussi explicite que les plus élémentaires construction de procédure en Pascal. Pour obtenir le plus grand bénéfice de la POO, la compréhension de grandes bibliothèques de classes est souvent nécessaire ce qui peut entraîner une rude voie d'apprentissage. le maintien d'un grand code d'application avec la POO a ses avantages et ses inconvénients comparativement à maintenir du code procédural strict. Il existe de nombreuses sources d'apprentissage pour l'analyse, la conception et les techniques de programmation en POO qui sont au-delà de la portée de ce guide.

Il existe de nombreux langages de programmation qui incorporent des fonctionnalités de la POO comme des extensions ou bien comme base de leur langue. En tant que tel, il y a beaucoup de termes différents pour décrire les concepts de POO. Même dans le langage FPC, certains des termes de recoupent. En général, la POO consiste habituellement en la notion de programmation objet(ou unité d'information) qui associe explicitement et encapsule un ensemble de données et de procédures qui agissent sur les données. Ces données sont généralement persistantes au cours de l'exécution du programme mais avec des mécanismes visant à réduire certains des problèmes inhérents à la déclaration des variables globales. En outre, les langages de POO permettent à des objets une modification progressive et/ou une extension basée sur des objets défini précédemment. Cette fonctionnalité est généralement appelé par les termes héritage et polymorphisme. Beaucoup de langages de POO utilisent les termes méthode ou message se référant à des procédures qui appartiennent à un objet. Une grande partie de la puissance de la POO est réalisée par (au moment de l'exécution) la liaison dynamique tardive des méthodes plutôt que la liaison à la compilation. Cette liaison dynamique des méthodes est similaire à l'utilisation de variables procédurales et de paramètres procéduraux mais avec une plus grande cohésion syntaxique, l'encapsulation des données auxquelles il est lié et aussi l'héritage du comportement des méthodes précédemment définies. Les pages wiki suivantes fournissent un point de départ pour en découvrir plus au sujet de l'analyse, la conception et la programmation d'une manière orientée objet.

http://en.wikipedia.org/wiki/Object-oriented_programming

http://en.wikipedia.org/wiki/OOAD

http://en.wikipedia.org/wiki/Object_oriented_design