Objectifs du cours d aujourd hui
|
|
- Irène Thibodeau
- il y a 7 ans
- Total affichages :
Transcription
1 Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Introduction à la Programmation Orientée Objet (POO) Introduire les notions d encapsulation et d abstraction Objets, instances et classes Classes en C++ p Variables d instance p Méthodes d instance p Encapsulation et Interfaces : public : et private : L objet this et le masquage Jamila Sam Haroud Laboratoire d Intelligence Artificielle Faculté I&C Informatique II Cours 15 : Introduction POO 1 Informatique II Cours 15 : Introduction POO 2 Objets : 1ère introduction Notion d encapsulation Vous avez appris à écrire des programmes de plus en plus complexes. Il faut donc maintenant des outils pour organiser ces programmes de façon plus efficace. C est l un des objectifs principaux de la notion d objet. Les objets permettent de mettre en œuvre dans les programmes les notions : d encapsulation d abstraction d héritage et de polymorphisme Informatique II Cours 15 : Introduction POO 3 Dans les programmes que vous avez écrits jusqu à maintenant, les notions de types de données et de traitement de ces données étaient séparées : type1 type2 typen fonction1 fonction2 fonctionm type : types de données (int,char, ) fonction : traitements auxiliaires utilisant ces types par exemple : type1 fonction2(type3 x1,type2 x2) ; concrètement : double surface(double hauteur, double largeur) ; Informatique II Cours 15 : Introduction POO 4
2 Notions d encapsulation (2) Le principe d encapsulation consiste à regrouper dans le même objet informatique des structures de données particulières et les traitements qui leur sont spécifiques : Les structures de données définies dans un objet seront appelées les attributs de cet objet ; Les traitements/fonctions défini(e)s dans un objet seront appelées les méthodes de cet objet. Relation fondamentale : OBJET = attributs + méthodes Notion d encapsulation (3) Les objets sont définis par leurs attributs et leurs méthodes : attribut1.1 attribut1.2 attributk.1 Objet1 ObjetK Methode1.1 MethodeK.1 MethodeK.2 Informatique II Cours 15 : Introduction POO 5 Informatique II Cours 15 : Introduction POO 6 Notion d encapsulation (4) Pourquoi encapsuler? En plus du regroupement des données et des traitements relatifs à une entité, l encapsulation permet de définir deux niveaux de perception : Le niveau externe : partie visible de l objet prototype des méthodes et attributs visibles depuis l extérieur c est l interface de l objet avec l extérieur Le niveau interne : implémentation de l objet méthodes et attributs visibles uniquement depuis l intérieur de l objet définition de l ensemble des méthodes et attributs de l objet c est le corps de l objet L intérêt de séparer les niveaux interne et externe est de donner une cadre plus rigoureux à l utilisation des objets utilisés dans un programme Les objets ne peuvent être utilisés qu au travers de leur interfaces (niveau externe) et donc les éventuelles modifications de la structure interne restent invisibles à l extérieur (même idée que prototype / définition d une fonction) Règle : (masquage) les attributs d un objet ne doivent pas être accessibles depuis l extérieur, mais uniquement par des méthodes. Un autre intérêt d encapsuler est que cela permet d abstraire Informatique II Cours 15 : Introduction POO 7 Informatique II Cours 15 : Introduction POO 8
3 Encapsulation et Interface 1. Encapsulation = isolement et dissimulation des détails d implémentation Concentration des attributs/méthodes concernant l objet 2. Interface = ce que l utilisateur peut utiliser 3. Exemple : l interface d une voiture Volant, accélérateur, pédale de freins, etc. Tout ce qu il faut savoir pour la conduire (mais pas la réparer! ni comprendre comment ça marche) L interface ne change pas, même si l on change de moteur et même si on change de voiture (dans une certaine mesure) : abstraction de la notion de voiture (en tant qu «objet à conduire») Notion d abstraction (1) Pour être véritablement intéressant, un objet doit permettre un certain degré d abstraction. Exemple : Figures géométriques la notion d «objet rectangle» n est intéressante que si l on peut lui associer des propriétés et/ou mécanismes généraux propriétés et mécanismes valables pour l ensemble des rectangles et non pas pour un rectangle particulier. Les notions de largeur et hauteur sont des propriétés générales des rectangles (attributs), Le mécanisme permettant de calculer la surface d un rectangle (surface = largeur hauteur) est commun à tous les rectangles (méthodes) Informatique II Cours 15 : Introduction POO 9 Informatique II Cours 15 : Introduction POO 10 Notion d abstraction (2) Le processus d abstraction consiste à identifier pour un ensemble d éléments : des caractérisations valides pour tous les éléments des mécanismes communs à tous les éléments description générique de l ensemble considéré Abstraction Spécifique hauteur: 30 largeur:12 surface:324 hauteur: 15 largeur: 26 surface:390 hauteur:30 largeur:30 surface:900 hauteur: largeur: surface= hauteur x largeur générique Informatique II Cours 15 : Introduction POO 11 Informatique II Cours 15 : Introduction POO 12
4 En programmation Objet : Classes et Types le résultat du processus d abstraction s appelle une classe une classe définit un type (au sens du langage de programmation) une réalisation particulière d une classe s appelle une instance Classe Rectangle hauteur largeur surface =. instanciation Exemples Abstraction d objets en terme de classes : l ensemble des livres l ensemble des vélos le type «chaînes de caractères» (string) les fenêtres d une interface graphique Instances (réalisations particulières) : «C++ par la pratique» de la bibliothèque centrale le vélo de votre petit frère «Il était une fois dans l Ouest» la fenêtre dans laquelle s affiche Nestcape sur mon écran instances Informatique II Cours 15 : Introduction POO 13 Dans le jargon de la POO, INSTANCE = OBJET Informatique II Cours 15 : Introduction POO 14 Classes v.s. instances Plan Attributs: largeur hauteur Rectangle méthodes: dessine() surface() Existence conceptuelle (écriture du programme) Existence concrète (exécution) classe (type abstrait) Notions d encapsulation et d abstraction Objets, instances et classes Passons à la pratique : Classes en C++ Variables d instance Méthodes d instance Encapsulation et Interfaces : public : et private : instance1 instance2 instance3 L objet this et le masquage Informatique II Cours 15 : Introduction POO 15 Informatique II Cours 15 : Introduction POO 16
5 Les classes en C++ En C++ une classe se déclare par le mot-clé class. Exemple : ; La déclaration d une instance d une classe se fait de la façon similaire à la déclaration d une variable classique : nom_classe nom_instance ; Déclaration des attributs La syntaxe de la déclaration des attributs est la même que celle des champs d une structure. type nom_attribut ; Exemple : les attributs hauteur et largeur, de type double, de la classe Rectangle pourront être déclarés par : double hauteur; double largeur; Exemple : Rectangle rect1; déclare une instance rect1 de la classe Rectangle. Informatique II Cours 15 : Introduction POO 17 Informatique II Cours 15 : Introduction POO 18 Accès aux attributs Déclaration des méthodes L accès aux valeurs des attributs d une instance de nom nom_instance se fait comme pour accéder aux champs d une structure : nom_instance.nom_attribut Exemple : la valeur de l attribut hauteur d une instance rect1 de la classe Rectangle sera référencée par l expression : rect1.hauteur La syntaxe de la définition des méthodes d une classe est la syntaxe normale de définition des fonctions : type_retour nom_methode (type_arg1 nom_arg1, ) { // corps de la méthode Exemple : une méthode surface() de la classe Rectangle pourrait être définie par : double surface() { return (hauteur * largeur); Informatique II Cours 15 : Introduction POO 19 Informatique II Cours 15 : Introduction POO 20
6 Accès aux méthodes L appel aux méthodes définies pour une instance de nom nom_instance se fait à l aide d expressions de la forme : nom_instance.nom_methode(val_arg1,) Exemple : la méthode void sethauteur(double h) ; définie pour la classe Rectangle peut être appelée pour une instance rect1 de cette classe par : rect1.sethauteur(3.5) Accès aux attributs et méthodes Chaque instance a ses propres variables : aucun risque de confusion d une instance à une autre. classe instances accès Rectangle double largeur ; double hauteur ; double surface() { rect1 largeur=4 hauteur=2 surface() rect2 largeur=2 hauteur=3 surface() rect1.largeur rect1.hauteur rect2.largeur rect2.hauteur rect2.surface() Informatique II Cours 15 : Introduction POO 21 Informatique II Cours 15 : Introduction POO 22 Portée des attributs Encapsulation et interface Remarque : Les attributs d une classe constituent des variables directement accessibles dans toutes les méthodes de la classes (i.e. des variables globales à la classe). Il n est donc pas nécessaire de les passer comme arguments des méthodes. Par exemple, dans toutes les méthodes de la classe Rectangle, l identificateur hauteur (resp. largeur) fait donc a priori référence à la valeur de l attribut hauteur (resp. largeur) de la classe. Exemple : définition d une méthode surface pour la classe Rectangle double surface() { return (hauteur * largeur); Tout ce qu il n est pas nécessaire de connaître à l extérieur d un objet devrait être déclaré comme private : double surface() { ; private: double hauteur; double largeur; Variable d instance privée = invisible depuis l extérieur de la classe. C est également valable pour les méthodes. Erreur de compilation si référence à une variable d instance privée : Rectangle.cc:16: double Rectangle::hauteur is private Informatique II Cours 15 : Introduction POO 23 Informatique II Cours 15 : Introduction POO 24
7 Encapsulation et interface (2) Méthodes «get» et «set» À l inverse ce qui doit être visible de l extérieur est «publique» : public : public: double surface() { ; Dans la plupart des cas : Privé : 1. Toutes les variables d instance 2. La plupart des méthodes d instance Publique : 1. Quelques méthodes d instance bien choisies (interface) Informatique II Cours 15 : Introduction POO 25 Toutes les variables d instance sont privées? Et si on a besoin de les utiliser depuis l extérieur de la classe? Si le programmeur le juge utile, il inclut les méthodes publiques nécessaires 1. Méthodes «set» : Modification Affectation de l argument à une variable d instance précise void sethauteur(double h) { hauteur = h ; void setlargeur(double L) { largeur = L ; 2. Méthodes «get» : Consultation Retour de la valeur d une variable d instance précise double gethauteur() { return hauteur ; double getlargeur() { return largeur ; Informatique II Cours 15 : Introduction POO 26 Masquage (shadowing) Masquage (2) masquage = un identificateur «cache» un autre identificateur Situation typique : le nom d un paramètre cache une variable d instance void sethauteur(double hauteur) { hauteur = hauteur; // Hmm. pas terrible! Si, dans une méthode, un attribut est masqué alors la valeur de l attribut peut quand même être référencée à l aide du mot réservé this. this est un pointeur sur l instance courante this «moi» Syntaxe pour spécifier un attribut en cas d ambiguïté : this->nom_attribut Exemple : void sethauteur(double hauteur) { this->hauteur = hauteur; // Ah, là ça marche! L utilisation de this est obligatoire dans les situations de masquage Informatique II Cours 15 : Introduction POO 27 Informatique II Cours 15 : Introduction POO 28
8 Portée des attributs (résumé) La portée des attributs dans la définition des méthodes peut être résumée dans le schéma suivant : class MaClasse { int x ; int y ; void une_methode ( int x ) { y x this->x Actions et Prédicats En C++ on peut distinguer les méthodes qui modifient l état de l objet («actions») de celles qui ne changent rien à l objet («prédicats»). On peut pour cela ajouter le mot const après la liste des arguments de la méthode : type_retour nom_methode (type_arg1 nom_arg1, ) const Exemple : double surface() const { return (hauteur * largeur); Informatique II Cours 15 : Introduction POO 29 Si jamais vous déclarez comme prédicat (const) une action, vous aurez à la compilation le message d erreur : assignment of data-member in read-only structure Informatique II Cours 15 : Introduction POO 30 Classes = super struct Pour résumer à ce stade, une classe c est une struct qui contient aussi des fonctions («méthodes») dont certains champs (internes) peuvent être cachés (private :) et dont d autres constituent l interface (public :) #include <iostream> using namespace std; Un exemple complet de classe // définition de la classe public: // définition des méthodes double surface() const { return (hauteur * largeur); double gethauteur() const { return hauteur; double getlargeur() const { return largeur; void sethauteur(double hauteur) { this->hauteur = hauteur; void setlargeur(double largeur) { this->largeur = largeur; private: // déclaration des attributs double hauteur; double largeur; ; Informatique II Cours 15 : Introduction POO 31 Informatique II Cours 15 : Introduction POO 32
9 Un exemple complet de classe (2) Objets et Classes en C++ //utilisation de la classe main() { Rectangle rect; double lu; cout << "Quelle hauteur? "; cin >> lu; rect.sethauteur(lu); cout << "Quelle largeur? "; cin >> lu; rect.setlargeur(lu); cout << "surface = " << rect.surface() << endl; Informatique II Cours 15 : Introduction POO 33 class MaClasse { déclare une classe. MaClasse obj1 ; déclare une instance (un objet) de la classe MaClasse Les attributs d une classe se déclarent comme des champs d une structure : class MaClasse { type attribut ; Les méthodes d une classe se déclarent comme des fonctions, mais dans la classe elle-même : class MaClasse { type methode(type1 arg1, ) ; Encapsulation et interface : class MaClasse { private : // attributs et methodes privees public : // interface : attributs et methodes publiques l attribut particulier this est un pointeur sur l instance courante de la classe. Exemple d utilisation : this->monattribut Informatique II Cours 15 : Introduction POO 34 Ce que j ai appris aujourd hui que l on peut encapsuler données et traitements en utilisant des classes d objets que les éléments de base de la POO en C++ sont : Variables et méthodes d instance Encapsulation et interface : public :, private :, méthodes «get» et méthodes «set». L objet this et le masquage je peux maintenant mieux concevoir mes programmes grâce à la programmation orientée objet Exercices de cet après-midi : La suite Premiers programmes orientés objets Le prochain cours : Suite des concepts de POO : constructeurs et destructeurs Ensuite : Héritage Polymorphisme Héritage multiples Informatique II Cours 15 : Introduction POO 35 Informatique II Cours 15 : Introduction POO 36
C++ Programmer. en langage. 8 e édition. Avec une intro aux design patterns et une annexe sur la norme C++11. Claude Delannoy
Claude Delannoy Programmer en langage C++ 8 e édition Avec une intro aux design patterns et une annexe sur la norme C++11 Groupe Eyrolles, 1993-2011. Groupe Eyrolles, 2014, pour la nouvelle présentation,
Plus en détailet Programmation Objet
FACULTE POLYTECHNIQUE DE MONS Service d Informatique et Programmation Objet Mohammed Benjelloun 2 ème Bachelier Année académique 2008-2009 Table des matières Avant-propos--------------------------------------------------------------------------
Plus en détailIntroduction à l héritage en C++
Algorithmique/Langage 1ère année Introduction à l héritage en C++ Yacine BELLIK IUT d Orsay Yacine.Bellik@iut-orsay.fr 1 Bibliographie Ce cours est basé sur le livre suivant : Programmer en C++, 5ème édition
Plus en détailUne introduction à Java
Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)
Plus en détailIntroduction à la programmation Travaux pratiques: séance d introduction INFO0201-1
Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1 B. Baert & F. Ludewig Bruno.Baert@ulg.ac.be - F.Ludewig@ulg.ac.be Qu est-ce que la programmation? Programmer Ecrire un
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailPremiers Pas en Programmation Objet : les Classes et les Objets
Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détailCours 1: Java et les objets
Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailC++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement
C++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement des objets d'une classe Utilisation d'une classe Droit
Plus en détailLangage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2
Langage et Concepts de Programmation Objet Travaux Dirigés no2 Pôle Informatique École Nationale Supérieure des Mines de St-Etienne Vous trouverez plus de détails sur les concepts abordés lors de ce TD
Plus en détailJava Licence Professionnelle CISII, 2009-2010. Cours 2 : Classes et Objets
Licence Professionnelle CISII, 2009-2010 Cours 2 : Classes et Objets 1 Classes et Objets Objectifs des LOO : - Manipuler des objets - Découper les programmes suivant les types des objets manipulés - Regrouper
Plus en détailObjets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailChapitre 2. Classes et objets
Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons
Plus en détailEncapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.
Encapsulation L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. La visibilité dépend des membres : certains membres peuvent être visibles et d'autres
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailInitiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr
Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation
Plus en détailCours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
Plus en détail30.avr.10 Présentation miniprojet. 9.mars.10 Cours 3 4.mai.10 Cours C++ 1. 16.mars.10 Cours 4 11.mai.10 Cours C++ 2
2ème partie de cours: 23.fév.10 Cours 1 20.avr.10 TEST 24.fév.10 TP1 21.avr.10 miniprojet 26.fév.10 TP réserve 23.avr.10 miniprojet 2.mars.10 Cours 2 27.avr.10 Présentation miniprojet 3.mars.10 TP2 28.avr.10
Plus en détailPlan Pédagogique du cours
Plan Pédagogique du cours Module: Programmation Orientée Objet Section : informatique Niveau : 3 ème niveau (gestion, industriel, réseau) Volume Horaire : 22,5 heures Cours Intégrés + 45 Travaux Pratiques
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailCours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
Plus en détailGénie Logiciel I. Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string
Génie Logiciel I Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string Nicolas Kielbasiewicz C.D.C.S.P./I.S.T.I.L./I.C.J. Filière M.A.M.
Plus en détailCours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr
. Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le
Plus en détailHéritage presque multiple en Java (1/2)
Héritage presque multiple en Java (1/2) Utiliser deux classes ou plus dans la définition d'une nouvelle classe peut se faire par composition. class Etudiant{ int numero; Diplome d; float passeexamen(examen
Plus en détailClasses et Objets en Ocaml.
Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailSuivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailCours d Algorithmique et de Langage C 2005 - v 3.0
Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris
Plus en détailLe langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie
Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis
Plus en détailCréation d objet imbriqué sous PowerShell.
Création d objet imbriqué sous PowerShell. Par Laurent Dardenne, le 13/01/2014. Niveau Ce tutoriel aborde la création d objet composé, c est-à-dire que certains de ses membres seront eux-mêmes des PSObjects.
Plus en détailInfo0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
Plus en détailJava Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites
Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)
Plus en détailChapitre VIII. Les bases de données. Orientées Objet. Motivation
Chapitre VIII Motivation Le modèle relationnel connaît un très grand succès et s avère très adéquat pour les applications traditionnelles des bases de données (gestion) Les bases de données Orientées Objet
Plus en détailJava c est quoi? Java pourquoi?
Grandes lignes du cours Cours JAVA : Le bases du langage Java. Version 3.02 Julien Sopena 1 1 julien.sopena@lip6.fr Équipe REGAL - INRIA Rocquencourt LIP6 - Université Pierre et Marie Curie Licence professionnelle
Plus en détailProgrammation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
Plus en détailPolycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5
UNIVERISTE MOHAMMED PREMIER Faculté des Sciences d Oujda Oujda - Maroc Polycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5 Pr. El Mostafa DAOUDI Département de Mathématiques
Plus en détailCours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Plus en détailProgramme Compte bancaire (code)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailCours de Programmation 2
Cours de Programmation 2 Programmation à moyenne et large échelle 1. Programmation modulaire 2. Programmation orientée objet 3. Programmation concurrente, distribuée 4. Programmation monadique 5. Les programmes
Plus en détailTP1. Outils Java Eléments de correction
c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par
Plus en détailACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Plus en détailGénie Logiciel avec Ada. 4 février 2013
Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre
Plus en détailLambda! Rémi Forax Univ Paris-Est Marne-la-Vallée
Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant
Plus en détailDiagramme de classes
Diagramme de classes Un diagramme de classes décrit les classes et leurs relations (associations, généralisation/spécialisation, ). classe association méthodes attributs héritage Diagramme de classes :
Plus en détailAuto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Plus en détailIRL : Simulation distribuée pour les systèmes embarqués
IRL : Simulation distribuée pour les systèmes embarqués Yassine El Khadiri, 2 ème année Ensimag, Grenoble INP Matthieu Moy, Verimag Denis Becker, Verimag 19 mai 2015 1 Table des matières 1 MPI et la sérialisation
Plus en détailGénéralités sur le Langage Java et éléments syntaxiques.
Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...
Plus en détailProgrammation Objet Java Correction
INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailCours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan
Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre
Plus en détailOCL - Object Constraint Language
OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object
Plus en détailTp 1 correction. Structures de données (IF2)
Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que
Plus en détailProgrammation stochastique
Programmation stochastique (Partie 1) IFT-6512 Hiver 2008 Présentation succinte COIN-OR? COmputational INfrastructure for Operations Research. Préalablement, COIN-OR tenait pour Common Optimization INterface
Plus en détailRemote Method Invocation (RMI)
Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe
Plus en détailIntroduction au pricing d option en finance
Introduction au pricing d option en finance Olivier Pironneau Cours d informatique Scientifique 1 Modélisation du prix d un actif financier Les actions, obligations et autres produits financiers cotés
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailP r ob lé m a t iq u e d e la g é n é r icit é. Pr in cip e d e la g é n é r icit é e n Ja v a ( 1 /3 )
P r ob lé m a t iq u e d e la g é n é r icit é les versions de Java antérieures à 1.5 permettaient de créer des classes de structures contenant n'importe quels types d'objet : les collections (classes
Plus en détailTD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting
IUT Bordeaux 1 2005-2006 Département Informatique Licence Professionnelle ~ SI TD Objets distribués n 3 : Windows XP et Visual Studio.NET Introduction à.net Remoting Partie 1 : l'analyseur de performances
Plus en détailINITIATION AU LANGAGE JAVA
INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal
Plus en détailChapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
Plus en détailRAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)
CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes
Plus en détailINFO-F-105 Language de programmation I Séance VI
INFO-F-105 Language de programmation I Séance VI Jérôme Dossogne Année académique 2008 2009 Un grand merci à Yves Roggeman pour ses relectures et remarques des codes et commentaires qui ont contribuées
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailJAVA TD0. Prise en main du langage Environnement de base JAVA 1
JAVA TD0 Prise en main du langage Environnement de base JAVA 1 Mon premier programme public class HelloWorld { public static void main(string [] arg){ System.out.println("Hello, World!"); main(string []
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement
Plus en détailObjectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)
Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter
Plus en détailProgrammation MacOSX / ios
Programmation MacOSX / ios Master Ingénierie Informatique 2011-2012 Jean-Baptiste.Yunès@liafa.jussieu.fr deux extensions objets de C : C++ (Stroustrup) Objective-C (Cox & Love) ajout de constructions à
Plus en détailModule.NET 3 Les Assemblys.NET
Module.NET Chapitre 3 Les Assemblys.NET 2011/2012 Page 1 sur 13 Contenu Cours... 3 3.1 - Définition d un assembly.net... 3 3.2 - Private assembly ou assembly privé.... 3 3.3 - Shared assembly ou assembly
Plus en détailJava DataBaseConnectivity
Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage
Plus en détailProgrammation Orientée Objet
Université de Pau et des Pays de l Adour Institut Universitaire de Technologie des Pays de l Adour Département Réseaux et Télécommunications 371, rue du Ruisseau BP 201 40004 Mont-de-Marsan Cedex tél :
Plus en détailLe langage C. Séance n 4
Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de
Plus en détailDépartement Automatisation et Informatisation Année 2005-2006. Programmation en C++ Institut des Sciences et Techniques de l Ingénieur d Angers
Département Automatisation et Informatisation Année 2005-2006 Programmation en C++ Institut des Sciences et Techniques de l Ingénieur d Angers 1 Bertrand Cottenceau 1. Introduction du cours de C++...3
Plus en détail4. Groupement d objets
Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux
Plus en détailPrincipes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle
2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation
Plus en détailIntroduction à C++ et à wxwidgets
Introduction à C++ et à wxwidgets Master IGC 1ère année Année universitaire 2011/2012 Christophe Renaud Version 1.5 19/09/2011 Introduction Objectifs du cours Introduction au langage objet C++ Introduction
Plus en détailbasée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
Plus en détailUtiliser Java sans BlueJ
Conception objet en Java avec BlueJ une approche interactive Utiliser Java sans BlueJ Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Conception objet en Java avec BlueJ une approche
Plus en détailJava et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailCours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions
Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental
Plus en détailPrésentation. Au programme. Fonctionnement. A l issue de ce module vous devriez...
Au programme Conception Orientée Objet Jean-Christophe Routier Licence mention Informatique Université Lille 1 Présentation L UE COO est le prolongement immédiat de l UE POO du S4 informatique. cf. http://portail.fil.univ-lille1.fr/portail/ls4/poo
Plus en détailAnne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2
Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détailClaude Delannoy. 3 e édition C++
Claude Delannoy 3 e édition Exercices Exercices C++ en en langage langage delc++ titre 4/07/07 15:19 Page 2 Exercices en langage C++ AUX EDITIONS EYROLLES Du même auteur C. Delannoy. Apprendre le C++.
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailDevenez un véritable développeur web en 3 mois!
Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web
Plus en détailSysteme d'exploitation
Introduction au dévellopement de Methodes Natives Partie I : appelle de methodes C++ sous windows Auteur: Frank Sauvage. 1 \ introduction aux methodes natives : Les methodes natives sont des methodes devellopées
Plus en détail3. UML - Unified Modeling Language Diagrammes statiques
3. UML - Unified Modeling Language Diagrammes statiques Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détailSupervision des réseaux
Supervision des réseaux Thomas Vantroys thomas.vantroys@lifl.fr Université de Lille I Laboratoire d Informatique Fondamentale de Lille Bâtiment M3 - Cité Scientifique 59655 Villeneuve d Ascq 2009-2010
Plus en détailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailProgrammation par les Objets en Java
Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détail