Programmation objet
<span class="mw-headline" id="Programmation_objet« >Programmation objet
Introduction à la programmation Java Object. NET, PHP, Flash, quatre environnements pour les approches de programmation, y compris la programmation orientée objet. Tous les tutoriaux pour comprendre les mécanismes de chaque langue. Rapport établi par Xavier Borderie, Janvier 2005
la productivité accrue des interfaces Java Java et de simplicité, les interfaces sont utilisées pour écrire un code plus propre et plus proche objet de la philosophie. Explication. (30/10/2003)
Java 5.0: innovations génériques, boucle for (), les énumérations, les importations statiques: Certaines des améliorations majeures à la dernière version de Java. (13/10/2004)
Transtypage en Java Dans un langage fortement typé, l’utilisation de différents types de variables peuvent causer des problèmes. La distribution peut ‘cast’ une valeur dans un type donné. (11/09/2003)
. NET C # 2.0: présentation des génériques de la prochaine version de C # comportera un mécanisme de favoriser la réutilisation de code, la création d’un véritable système de modèles. (24/11/2003)
Découverte de Visual Studio.NET: Héritage et remplacement de Microsoft Visual Basic. NET prend en charge l’héritage en vous permettant de définir des classes en utilisant les classes de base pour d’autres classes dérivées. (29/04/2002)
PHP Programmation Orientée Objet avec PHP5 changements nombreux ont eu lieu dans ce domaine entre PHP4 et PHP5. Anthology. (03/09/2003)
Sous réserve de l’utilisation de PHP pour gérer sa base de données L’objet peut définir une fois pour toutes les méthodes et les utiliser partout. Une solution idéale pour les sites de plusieurs pages utiliser une base de données. (31/01/2003)
Créer une classe PHP PHP est un langage orienté objet. Il peut traiter non seulement des fonctions, mais les classes (objets), qui comprennent des variables (attributs) et les fonctions (méthodes) en utilisant ces variables. (05/01/2001)
Flash ActionScript: à la découverte de mise en œuvre du langage ActionScript de Flash 5 et MX première demande et de la découverte des spécificités du langage. (23/09/2003)
Classes
infoclick (Gers, 32) propose des solutions informatiques: vente de matériel informatique, maintenance informatique, installation de votre réseau de conseil aux entreprises. Les ventes de PC assemblés, montés informatique (Intel Pentium, AMD Athlon, AMD Sempron, etc.) PC assemblé pour la bureautique jeux et le multimédia.
Origines
Le langage Simula-67, la localisation d’enregistrement de classe Hoare, qui prévoit que les bâtiments seront ces langues-classes orientées objet: classe, polymorphisme, héritage, etc.Mais c’est vraiment par et avec Smalltalk Smalltalk 71 et 80 (Dan Ingalls), fondée en grande partie sur Simula 67 et Lisp, que les principes de programmation orientée objet, le résultat du travail d’Alan Kay, sont transportés: Object, encapsulation, les messages , le typage et le polymorphisme (via la sous-classification), d’autres principes tels que l’héritage, sont soit des dérivés ou d’implantation. En Smalltalk, tout est objet, même des classes. Il est également plus langage orienté objet qui est un environnement graphique interactif complet.
Depuis les années 1980, commence l’excitation de langages orientés objet: Objective C (début 1980), C (C avec des classes) en 1983, Eiffel en 1984, Common Lisp Object System dans les années 1980, etc. Les années 1990 ont vu l’apogée de l’extension de la programmation orientée objet dans les différents domaines du développement de logiciels.
Aujourd’hui, la programmation orientée objet est considéré plutôt comme un paradigme, le paradigme objet, comme une technique de programmation simple. Ainsi, lorsque nous parlons de nos jours des objets de programmation, cela signifie avant tout la partie codante d’un modèle objet produit par OOA et COO.
Principes
La programmation orientée objet a été présenté par Alan Kay avec Smalltalk.Cependant, ses principes ont été formalisés que dans les années 1980 et surtout 1990. Par exemple en tapant du second ordre, qui décrit le typage de la programmation orientée objet (Duck Typing appelé par la communauté Ruby et Python), a été formulée en 1995 par Cook.
L’objet (attributs et méthodes)
Plus précisément, un objet est une structure de données qui répond valorisés et cachés à un ensemble de structure de données messages.This définit le statut alors que tous les messages qu’il a décrit son comportement:
Certains attributs et / ou des méthodes (ou plutôt leur représentation informatique) sont cachés: le principe d’encapsulation. Ainsi, le programme peut modifier la structure interne des objets ou leurs méthodes, sans avoir un impact sur les utilisateurs de l’objet.
Un exemple avec un objet représentant un nombre complexe: il peut être représenté sous différentes formes (cartésienne (réel, imaginaire), trigonométriques, exponentielle (Module, Angle)). Cette représentation restent dissimulés et sont internes à l’objet. L’objet se déplaçait messages à lire une représentation différente du nombre complexe. En utilisant les seuls messages qui comprend nos nombres complexes, les objets appelant sont garantis de ne pas être touché lors d’un changement de sa structure interne.Ce dernier n’est accessible que par les méthodes de messages.
Saisie et le polymorphisme
Dans la programmation orientée objet, chaque objet est typé. Le type définit la syntaxe (‘Comment appeler?’) Et la sémantique («Que fait-il?) Messages qui peut répondre à un objet. Il est donc presque exactement à l’interface de l’objet. Cependant, la plupart des langages orientés objet ne proposent que la définition syntaxique d’un type (C, Java, C #, …) et rares sont ceux qui offrent la possibilité de définir comme sa sémantique (conception Eiffel par contrat).
Un objet peut appartenir à plus d’un type: le polymorphisme qui permet l’utilisation d’objets de types différents où l’on devrait être un certain type. Une façon de réaliser le polymorphisme est le sous-type (aussi appelé héritage de type): un type est affiné par un autre père de type (sous-type) par des restrictions sur les valeurs possibles des attributs. Ainsi, les objets de ce sous-type sont compatibles avec le père type. De là découle le principe de substitution de Liskov. Toutefois, le sous-typage est limité et ne résout pas le problème des types récursifs (un message qui prend en paramètre un type d’objet de l’appelant).Pour résoudre ce problème, Cook en 1995, définit la sous-classification et l’identification du second ordre qui régit la programmation orientée objet: le type est un membre d’une famille de types polymorphes de point fixe (classe appelée). L
es lignes sont un moyen de représenter explicitement les types de classes. (Le spectacle peut aussi être implicite, quant à Smalltalk, Ruby, etc.)
De même, deux mécanismes existent sous-typage: l’héritage de type simple (Smalltalk, Java, C #) et l’héritage multiple (C, Python, CLOS, Eiffel, WLangage).
Redéfinir
La programmation orientée objet permet à un objet pour affiner la mise en œuvre d’un message défini pour les objets d’un type de parent, c’est à dire de redéfinir la méthode associée avec le message: le principe de la redéfinition de messages (ou dominante en anglais).
Toutefois, dans une définition stricte de la frappe (saisie du premier ordre), l’opération à un message d’invitation doit être le même quel que soit le type exact de l’objet referred.This signifie que, dans le cas où l’objet est visé type exact de un sous-type du type considéré dans l’appel, seule la méthode de type père est exécuté:
Reel est un type contenant une méthode qui * la multiplication de deux nombres réels, Permettez-sous-type Integer Reel, un entier i et ra réel, alors l’instruction i * r * va exécuter la méthode de la bobine. On pourrait appeler celle de nombre entier avec une redéfinition.
Classe et prototype
La structure interne des objets et les messages qu’ils sont définis à répondre par des modules logiciels. Ces modules de créer les mêmes objets par des opérations dédiées. Deux représentations de ces modules existent: la classe et le prototype.
La structure de classe est un ordinateur spécial dans le langage objet. Il décrit la structure interne des données et définit les méthodes qui s’appliquent aux objets de la même famille (même classe) ou de type. Il propose des moyens pour créer des objets dont la représentation sera donnée par les objets generator.The classe sont alors appelés des instances de la classe. Par conséquent, les attributs d’un objet sont appelées variables d’instance et d’instance de transaction messages ou des méthodes d’instance. La classe d’interface (l’ensemble des opérations visibles) constituent les types d’objets. Selon le langage de programmation, une classe doit être considérée comme une structure particulière de la langue, soit comme un objet en soi (objet non-terminal).Dans le premier cas, la classe est définie dans l’exécution, dans l’autre, la classe elle-même doit être créé et défini par une classe: ils sont des méta-classes. L’introspection des objets (ou «méta-programmation‘) est défini dans ces méta-classes.
La classe peut être décrite par des attributs et des messages. Ces derniers sont ensuite appelé, par opposition aux attributs et des messages d’un objet, variables de classe et méthodes de fonctionnement ou de classe. Parmi les langues classes se trouvent dans Smalltalk, C, C #, Java, etc.
Le prototype est un objet en lui-même et sert de définition du prototype de la structure interne et les objets messages.Other du même type sont créés par clonage. Dans le prototype, il n’ya pas de distinction entre les attributs et les messages: ils sont tous les emplacements. Un slot est une étiquette de l’objet, privé ou public, qui est jointe une définition (ce peut être une valeur ou une opération). Cet accessoire peut être changé à l’exécution. Chaque ajout d’un slot l’objet d’impact et tous ses clones. Chaque modification d’une fente est locale à l’objet en question et n’a pas d’impact de ses clones.
Le concept de trait pour changer une fente sur un ensemble de clones.Un AVC est un ensemble d’opérations dans la même catégorie (le clonage, la persistance, etc.) Transverse aux objets. Elle peut être représentée soit comme une structure particulière de la langue, comme un emplacement dédié ou un prototype. L’association d’un objet à un trait que l’objet et ses clones sont capables de répondre à toutes les opérations de la ligne. Un objet est toujours associé à au moins un trait, et les traits sont les parents d’objets (comme une relation d’héritage). Un trait est un mixin avec un relative.Among les langues dans prototype Javascript, auto, Io, Slater, Lisaac, etc.
la notion d’objet
POO est modéliserinformatiquement un ensemble d’éléments d’une partie du monde réel (quel domaine onappelle) dans un ensemble d’entités informatiques.Ces entités informatiques sont appelées objets. Cet ordinateur dedonnées comprenant les principales caractéristiques des éléments Dumonde réel (taille, couleur, …).
L’approche objet est une idée qui a désormais fait ses preuves. Simula a été la première langue programmationà mettre en œuvre le concept de classes en 1967! En 1976, Smalltalk implémente l’encapsulation lesconcepts, l’agrégation et l’héritage (les principaux concepts de l’approche objet).D’autre part, de nombreux langages orientés objets ont été mis au point des fins pointdans universitaire (Eiffel, Objective C, Loops, etc.).
La difficulté de cette modélisation est de créer une forme représentationabstraite d’objets, d’entités ayant une existence matérielle (chien, voiture, ampoule, …) ou virtuelle (sécurité sociale, temps, …).
Un objet est caractérisé par plusieurs concepts: les attributs: Ces données caractérisant l’objet. Ces informations sont Desvarieux état stockage des méthodes objetLes (parfois appelées fonctions membres): Les méthodes d’un objet caractérisé son comportement, c’est-à-dire la totalité des actions (opérations appelé) cet objet est capable d’atteindre. Ces opérations permettent au sujet de réagir à des forces extérieures (ou d’agir sur d’autres objets). En outre, les opérations sont étroitement liées auxattributs parce que leurs actions peuvent dépendre des valeurs d’attribut, ou l’modifierL’identité: L’objet a une identité, qui permet les objets distinguerdes d’autres, indépendamment de son état. Nous avons l’habitude de construire cette identité par un problème d’identification découlant naturellement (par exemple produitpourra être identifiées par un code, une voiture avec un numéro de série, …)
Modélisation d’objets
la modélisation objet consiste à créer un modèle informatique du système de l’utilisateur (un système). Ce modèle peut réunir deux éléments des concepts du monde réel ou des idées liées au commerce ou dans un domaine qui fera partie du système. la modélisation objet consiste à identifier, qualifier dans un premier temps ces articles comme des types, ainsi indépendamment de la mise en œuvre. C’est ce qu’on appelle l’analyse orientée objet et OOA (Object-Oriented Analysis).
‘