Résumé des concepts liés aux objets C. Petitpierre, EPFL.

Slides:



Advertisements
Présentations similaires
Lundi 15 Juin 2009 Les principales techniques JavaScript.
Advertisements

La programmation orientée objet avec Java L3-MIAGE Plan
Lien hypertexte ou html
1 JavaScript V0 : Nauer. 2 JavaScript Quid ? Langage de programmation lié à HTML. Code JavaScript intégré aux pages HTML. Code interprété par le navigateur.
LE LANGAGE JAVASCRIPT LES FENETRES.
Virtools Olivier Lamotte.
Gestion de la persistance des objets
Faculté I&C, Claude Petitpierre, André Maurer Bases de données Javascript – SQL - LemanOS.
Faculté I&C, Claude Petitpierre, André Maurer 1 Héritage par prototype Héritage dattributs ou de méthodes Héritage de constructeurs.
Javascript les spécificités du langage - Partie 3 -
Javascript les spécificités du langage - Partie 6 -
Javascript les spécificités du langage - Partie 2-
Modèle Conceptuel des Traitements
JavaBeans Réalise par: EL KHADRAOUY TARIK AOUTIL SAFOWAN.
Faculté I&C, Claude Petitpierre, André Maurer 1 Java.
Concepts de base : la Classe Pour faire une comparaison simple, une classe serait a priori, une structure C avec des variables et des fonctions.
Faculté I&C, Claude Petitpierre, André Maurer What is this ? (Quest ce que this ?)
Analyse et Conception orientée objet
Initiation à la conception de systèmes d'information
Faculté I&C, Claude Petitpierre, André Maurer Les objets Introduction.
Présentation de la séquence de cours sur les interactions HTML-javascript Laure Walser, 11 juin 2010.
Langage Oriente Objet Cours 4.
Introduction à DOM Maroua Bouzid
Objets Javascript Mécanismes internes Le concept et la construction dobjets
Chapitre VIII Structures dobjets. Chapitre VIII - Structures d'objets2 Structures d objets Il existe plusieurs relations entre les classes. Lhéritage.
IFT1025, Programmation 2 Jian-Yun Nie
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Vers la conception objet
66 Utilisation des classes et des objets. 6-2 Objectifs A la fin de ce cours, vous serez capables de : Créer de nouvelles classes à laide de Eclipse Utiliser.
Introduction au paradigme orienté-objet (suite)
Présentation Structures de Données et TDA
Faculté I&C, Claude Petitpierre, André Maurer 1 Concepts dhéritage Héritage dimplémentation hasA Héritage de spécialisation isA.
Faculté I&C, Claude Petitpierre, André Maurer Le parallélisme Introduction.
1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 3 : Classes et Objects.
AJAX.
COURS DE PROGRAMMATION ORIENTEE OBJET :
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Faculté I&C, Claude Petitpierre, André Maurer Le parallélisme Introduction.
Faculté I&C, Claude Petitpierre, André Maurer JavaCC Java compilers compiler (version générant du Javascript)
99 Réutilisation du code grâce à l'héritage. 9-2 Objectifs À la fin de ce cours, vous serez capables de : Définir l'héritage Utiliser l'héritage pour.
Feuilles de styles CSS Syntaxe d'application d'un style à une balise HTML : Les différents types de style : Pourquoi utiliser un style ? Possibilité étendue.
Patrons de conceptions de créations
JavaScript Nécessaire Web.
La notion de type revisitée en POO
11/04/ L'héritage Cours 7 Cours 7.
Programmation objet La base.
Les balises HTML et les objets JavaScript correspondants Objet document L'objet document est important dans la mesure ou il contient tous les objets du.
Tutorat en bio-informatique
PHP 7° PARTIE : PROGRAMMATION OBJET
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
C++ L’HERITAGE Fayçal BRAÏKI DUT INFORMATIQUE.
Réaliser par: Sadok Amel Cheboui hassiba
PHP objet Jérôme CUTRONA 10:13:27 Programmation Web
Les classes et les objets Les données finales class A { … private final int n = 20 ; // la valeur de n est définie dans sa déclaration … } class A { public.
S'initier au HTML et aux feuilles de style CSS Cours 5.
Asynchronous JavaScript And XML AJAX C. Petitpierre
Le polymorphisme.
Cours du 5 novembre.
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
Héritage Conception par Objet et programmation Java
Modules créés au moyen d’objets C. Petitpierre. Objets construits sans constructeurs ( en Java on a introduit la réflexion pour cela ) var obj1 = { }
Introduction à SVG Scalable Vector Graphic. Informations ● Plus d'informations ici (draft, tutoriaux, outils... ): –
Nouvelles Technologies Internet & Mobile
Introduction à la Programmation Orientée Objet
Le JavaScript.. Histoire Langage créé en 1995 par Brendan Eich pour la Netscape Communications Corporation. Est inspiré de nombreux langages, notamment.
Sommaire : -A propos des images importées -Les boutons et l’interactivité dans la scène -Textes dynamiques -Les clips (les liaisons) -Les sons -Les composants.
Transcription de la présentation:

Résumé des concepts liés aux objets C. Petitpierre, EPFL

Objets Un objet représente quelque chose, adresse d’une personne, facture, élément graphique. L’objet est distinct de la chose, mais il mémorise les informations qui concerne la chose et les opérations qu’on peut effectuer sur elle. Quand on développe un programme, on se fait un modèle (peut-être seulement en pensée) de l’objet. Ce modèle est à la fois celui de l’objet et celui de la chose. Lorsque l’on réfléchit ou discute du modèle, on confond souvent les deux aspects du modèle, mais cela n’a pas de conséquences particulières.

Objet Un objet possède des attributs des opérations Il peut être créé directement ou par chablon (new)

x y width height setAttribute (id, a) this rect = { x : 0, y : 0, setAttribute : function(id, a) { this[id] = a } rect.setAttribute("y", 100) // utilisation La chose Le modèleLa spécification (directe)

x setAttribute (id, a) Rect = function() { this.x = 0 this.setAttribute = function(id, a) { this[id] = a // interne } Spécification simple d’un chablon Le chablon apparaît sous la forme d’un constructeur, c’est-à-dire d’une fonction, mais qui n’est utilisée que pour créer des objets.

x setAttribute (id, a) Rect = function() { } // constructeur Rect.prototype.x = 0 Rect.prototype.setAttribute = function(id, a) { this[id] = a // interne } Spécification d’un chablon avec prototype

x y width height setAttribute (id, a) this Rect = function() { this.x = 0 this.y = 0 this.setAttribute = function(id, a) { this[id] = a // interne } rect = new Rect() // création rect.setAttribute("y", 100) // utilisation La chose Le modèleLa spécification (par chablon)

obj = new Constr() Constr.prototype.g = function() { return "salut" } alert(obj.g()) Extension d’un chablon Javascript définit un prototype, grâce auquel le chablon peut être complété même après la création d’un objet par le biais de new. Dans ce cas, même les objets qui ont été créés avant l’extension reçoivent l’extension. ( Pour étendre un chablon avec tous les attributs et fonctions d’un autre chablon, on utilise l’héritage, vu plus loin )

x y width height setAttribute (id, a) up(d) left(d) La chose Le modèle stroke stroke-width Héritage ou composition d’objets

La spécification (héritage) function Constructor() {... } Derived.extend(Constructor) function Derived(arg, arg2) { Derived.upper(this, arg) this.attribute2 = arg2 } Il y a un bouton dans LemanOS pour générer la structure ci-dessus!

Création et extension d’un objet Un objet créé directement existe dès qu’il a été défini. Si l’on doit créer plusieurs objets du même modèle, on utilise le chablon (le constructeur). En Javascript, on peut à tout moment compléter un objet par de nouveaux champs ou de nouvelles opérations. En Javascript et dans les autres langages, on peut étendre le chablon au moyen de l’héritage.

// les attributs et les fonctions peuvent être ajoutés // après la création de l’objet, quelque soit la façon // dont ils ont été créé obj.attr = 123 obj.m = function(a) { this.x = a } Adjonction d’un attribut

// le système appelle new <rect id="rectr" x="275" y="257" rx="5" ry="5" width="40" height="40" fill="red"/> // adjonction d’une fonction à un objet graphique document.getElementById('rectr').up = function (delta) { this.setAttribute("y",parseInt(this.getAttribute("y"))-delta) } Création et extension d’un objet graphique

<rect id="rectr" x="275" y="257" rx="5" ry="5" width="40" height="40" fill="red"/> // adjonction d’une fonction à tous les objets // (graphiques ou non) Object.prototype.up = function (delta) { this.setAttribute("y",parseInt(this.getAttribute("y"))-delta) } Extension d’objets graphiques