Faculté I&C, Claude Petitpierre, André Maurer Les objets Introduction.

Slides:



Advertisements
Présentations similaires
LE LANGAGE JAVASCRIPT LES FENETRES.
Advertisements

3- Déclaration et accès aux objets
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
TD 1 IJA Introduction Objet, méthode, attribut Classe, instance
PHP5 poo.
Faculté I&C, Claude Petitpierre, André Maurer Bases de données Javascript – SQL - LemanOS.
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
Méthodes d‘optimisation en finance
FSAB1402: Informatique 2 Techniques de Programmation Orientée Objet
Cours 6 : Have fun Dominique Rossin. Ou suis-je ? Idée : On affiche un div On crée une carte centrée sur une latitude et une longitude. On définit un.
Faculté I&C, Claude Petitpierre, André Maurer 1 Héritage par prototype Héritage dattributs ou de méthodes Héritage de constructeurs.
Faculté I&C, Claude Petitpierre, André Maurer Bases de données SQL (Structured Query Language)
Javascript les spécificités du langage - Partie 3 -
Javascript les spécificités du langage - Partie 2-
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Faculté I&C, Claude Petitpierre, André Maurer 1 Java.
Python Interfaces graphiques
Faculté I&C, Claude Petitpierre, André Maurer What is this ? (Quest ce que this ?)
Présentation de la séquence de cours sur les interactions HTML-javascript Laure Walser, 11 juin 2010.
Faculté I&C, Claude Petitpierre, André Maurer setTimeout ( nomDeFonction, 1000 ) setTimeout ( instructions, 1000 ) setTimeout ( nomDeFonction(), 1000 )
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.
Programmation fonctionnelle Le langage LISP
Faculté I&C, Claude Petitpierre, André Maurer Evénements en Javascript prototype.js.
Les Classes les structures en C (struct) regroupent des variables : structuration de l'analyse mais problèmes de cohérence problèmes de sécurité d'accès.
Faculté I&C, Claude Petitpierre, André Maurer 1 JavaCC Java compilers compiler (version générant du Javascript)
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.
 Ecriture dynamique des Calques, des tableaux HTML
Le langage Javascript pour le web
Une nouvelle structure de données : les tableaux
Faculté I&C, Claude Petitpierre, André Maurer Scalable vector graphics SVG (documentation en français – voir menu.
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.
Faculté I&C, Claude Petitpierre, André Maurer Gestion des fichiers de LemanOS Ne fonctionne que sous LemanOS. On peut voir les fichiers créés dans ce système.
1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 3 : Classes et Objects.
AJAX.
Chapitre 9 Les sous-programmes.
Les pointeurs en C. valeur : main () { float valeur; void* pointeur; }
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)
Faculté I&C, Claude Petitpierre Cascaded style sheets CSS.
Géométrie analytique Distance d’un point à une droite.
Géométrie analytique Distance d’un point à une droite.
PHP 2° PARTIE : FONCTIONS ET FORMULAIRE
Programmation Orienté Objet en C++ Ricard julien.
Faculté I&C, Claude Petitpierre, André Maurer Scalable vector graphics SVG (documentation en français – voir menu.
Javascript les spécificités du langage - Partie 5 -
JavaScript Nécessaire Web.
Digitaliser des images
La notion de type revisitée en POO
ESA Ecole Supérieure des Affaires Ernaelsten Gérard - Frédéric FiléePage 285 Cours de Programmation Web : PHP Chapitre 5 : Orienté objet en PHP.
11/04/ L'héritage Cours 7 Cours 7.
Programmation objet La base.
Faculté I&C, Claude Petitpierre, André Maurer 1 JSON Templates json.org (fin de la page: json-template.js)
1 Structures des données. 2  Le tableau permettait de désigner sous un seul nom un ensemble de valeurs de même type, chacune d'entre elles étant repérée.
Introduction à Visual Studio C++ (VC++)
Résumé des concepts liés aux objets C. Petitpierre, EPFL.
5ième Classe (Mercredi, 19 octobre) Prog CSI2572.
PHP 7° PARTIE : PROGRAMMATION OBJET
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
Réaliser par: Sadok Amel Cheboui hassiba
Cours LCS N°4 Présenté par Mr: LALLALI
P.D.F. Qui es-tu?.
Asynchronous JavaScript And XML AJAX C. Petitpierre
Fichier=open('monfichier.txt','w') >>> fichier.write('bonjour\n') 8 >>> liste ['le chien', 'le chat', 'le loup'] >>> for s in liste: fichier.write(s+'\n')
Faculté I&C, Claude Petitpierre, André Maurer Exercice sur les bases de données Quelques rappels et conseils (voir Aides > Accès à la base de données)
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 à l’utilitaire
** Flash séance 2 Action script. ** Action Script Ajoute de l’interactivité Permet de contrôler les clips  Langage de programmation orienté objet.
Flash MX – Séance 2 Interactions & ActionScript David Rapin Si28 P06.
Transcription de la présentation:

Faculté I&C, Claude Petitpierre, André Maurer Les objets Introduction

Faculté I&C, Claude Petitpierre, André Maurer Création dun unique objet var obj1 = { attr: 234, str: "abcd", } obj1.nom = "uvw // adjonction d'un attribut alert(obj1.attr) // affichage d'un attribut de lobjet

Faculté I&C, Claude Petitpierre, André Maurer Objet var obj1 = { } obj1.nom = "uvw // adjonction d'un attribut alert(obj1.nom) // affichage d'un attribut de lobjet

Faculté I&C, Claude Petitpierre, André Maurer Objet = tableau associatif var obj2 = { "stroke-width": 5, "str": "abcd2", valeur: x // variable } obj2[background-color] = red" // tableau associatif a cause du - optionnel

Faculté I&C, Claude Petitpierre, André Maurer Deux possibilités équivalentes de créer une fonction var maFct = function () {... } function maFct() {... } Les deux syntaxes créent une variable contenant une définition de fonction alert(typeof maFct)

Faculté I&C, Claude Petitpierre, André Maurer Les fonctions sont en fait des variables qui contiennent des définitions de fonctions var maFct = function () {... } var desFonctions = [ ] desFonctions[0] = maFct desFonctions[0]() // appel de la fonction maFct

Faculté I&C, Claude Petitpierre, André Maurer Objet avec des méthodes var obj1 = { attr: 234, fct: function () {... } } obj1.open = function () {... } // adjonction d'un méthode obj1.fct() // appels de méthodes de lobjet obj1.open()

Faculté I&C, Claude Petitpierre, André Maurer Mot-clé this var obj1 = { attr: 234, fct: function () { this.attr = 0 } // { obj1.attr = 0 } } obj1.open = function (nom) { this.attr = 10 this.unAttrib = nom // crée un nouvel attribut } obj1.fct() obj1.open("Max") x = obj1.unAttrib

Faculté I&C, Claude Petitpierre, André Maurer Objet décrivant un segment de droite en canvas segment = { x1 : 100 y1 : 100 x2 : 200 y2 : 100 strokeStyle : "black" }... segment.print = function () { ctx.beginPath() ctx.strokeStyle = this.strokeStyle ctx.moveTo(this.x1, this.y1) ctx.lineTo(this.x2, this.y2) ctx.stroke() } segment.print() // appel

Faculté I&C, Claude Petitpierre, André Maurer Création de plusieurs objets similaires function Line(_x1, _y1, _x2, _y2) { this.x1 = _x1 this.y1 = _y1 this.x2 = _x2 this.y2 = _y2 this.strokeStyle = "black" this.print = function () { ctx.beginPath() ctx.strokeStyle = this.strokeStyle ctx.moveTo(this.x1, this.y1) ctx.lineTo(this.x2, this.y2) ctx.stroke() } } maLigne = { init : Line // devient une méthode } maLigne.init(10,10,20,10) = // Même opération, autre syntaxe maLigne = new Line( 10,10,20,10)

Faculté I&C, Claude Petitpierre, André Maurer affichage du dessin Plusieurs objets dans un tableau var listeLignes = [ ] var x = new Line(1,1,2,1) listeLignes[0] = x (0) listeLignes[1] = new Line(1,2,1,10) (1) listeLignes.push(new Line(2,20,1,2)) (2) for (var i = 0; i<listeLignes.length; i++) { listeLignes[i].print() } [, ] 0 1 2

Faculté I&C, Claude Petitpierre, André Maurer Détection dobjets canvas var leSelectionne = null créée par le développeur x = event.clientX y = event.clientY for (var i = 0; i<listeLignes.length; i++) { if (listeLines[i].inside(x,y)) { listeLignes[i].strokeStyle = "red" leSelectionne = i break }

Faculté I&C, Claude Petitpierre, André Maurer Résumé function Constructeur (x) { this.x = x this.fct = function() { this.x = 12 } } var obj = new Constructeur (35) obj.fct() obj.nouvelle = function() {…} // def obj.nouvelle() // appel var obj = { x : 35 fct : function() { this.x = 35 } } obj.fct() obj.nouvelle = function() {…} // def obj.nouvelle() // appel

Faculté I&C, Claude Petitpierre, André Maurer Variable locales (privées) function Line(x1) { this.x1 = x1 var y1 = 100 globale = 200 function f() { alert(y1) } this.g = function() { this.x1 = y1 f() } maLigne = new Ligne(10,10,20,10) a = maLigne.x1 b = globale c = maLigne.y1 d = maLigne.f()

Faculté I&C, Claude Petitpierre, André Maurer Hiérarchie dobjets var o = { a: "xyz", b: { s: 12, g: "www", m: { } } } o.b.m.k = 125

Faculté I&C, Claude Petitpierre, André Maurer JSON function execute1 () { var x = { fruit: "banane", poids:120} File.write('sauvetage', JSON.stringify(x)) } function execute2 () { var y = File.read('sauvetage') var z = JSON.parse(y) alert(z.fruit+" "+z.poids) } Sauver Restaurer

Faculté I&C, Claude Petitpierre, André Maurer Rappels sur canvas pour lexercice Tests/test var ctx function initialise() { ctx = document.getElementById('canv').getContext('2d') }

Faculté I&C, Claude Petitpierre, André Maurer Rappels sur canvas Segment: ctx.moveTo(100,200) ctx.lineTo(150,250) Ligne brisée: ctx.moveTo(100,200) ctx.lineTo(100,250) ctx.lineTo(150,250) Polygone: ctx.moveTo(100,200) ctx.lineTo(100,250) ctx.lineTo(150,250) ctx.closePath() ctx.beginPath() ctx.strokeStyle = "#00ff00 // dessin éléments ctx.stroke() ctx.beginPath() ctx.strokeStyle = "#00ff00 // dessin éléments ctx.fill()

Faculté I&C, Claude Petitpierre, André Maurer Gestion dun arbre mmm gauche droite bbb gauche droite sss gauche droite

Faculté I&C, Claude Petitpierre, André Maurer Méthode du nœud, qui insère un nom Lorsquun nœud reçoit un nom: Sil est nouveau: il mémorise le nom Si le nom est plus petit que le sien: Sil a un nœud à gauche, il lui passe le nom Sinon, il crée un nœud, le mémorise et appelle sa méthode insère avec le nom Si le nom est plus grand, il fait de même pour la droite

Faculté I&C, Claude Petitpierre, André Maurer Méthode imprime Lorsquun nœud reçoit la demande dimpression: Il demande à gauche dimprimer et attend le retour de lappel Il imprime son propre nom Il demande à droite dimprimer et attend le retour de lappel Il retourne lappel à lappelant