II. Principes généraux Instanciation
|
|
- Paule Lortie
- il y a 6 ans
- Total affichages :
Transcription
1 II. Principes généraux Instanciation Éléments de vocabulaire (rappel) Identificateur : c'est un mot significatif d'un programme. Certains identificateurs sont prédéfinis pour un langage donné (par exemple, en java : int, println, class, ) et d'autres sont définis (déclarés) par un programmeur. Déclaration d'un identificateur : c'est l'association entre un type et un identificateur choisi par le programmeur qui est alors défini. En java, le type précède l'identificateur. Paramètres effectifs (arguments) d'une fonction : ce sont les arguments de la fonction lors de son appel. Par exemple, dans l'appel : System.out.println("le résultat est "+res); le paramètre effectif de println est l'expression «"le résultat est "+res» qui est de type String. De même, dans l'appel : echange(i,j,t); de la fonction echange dont le rôle est d'échanger les contenus des cases d'indices i et j dans le tableau de décimaux t, les paramètres effectifs sont les expressions limitées aux variables i, j et t. Paramètres formels d'une fonction : ce sont les variables qui permettront de recevoir les paramètres effectifs de la fonction lors de son appel. Il faut un paramètre formel pour chaque donnée utile lors de l'exécution de la fonction. Par exemple, en java, pour les fonctions vues précédemment, on pourrait avoir respectivement : et : println(string S) S est le seul paramètre formel de println. echange(int a,int b,double[] t) les paramètres formels ont des noms propres à la fonction, indépendants de ceux des paramètres effectifs. Type de retour d'une fonction : c'est le type de la valeur renvoyée par la fonction. Il peut être vu comme la déclaration de l'identificateur qui représente le nom de la fonction et le précède donc. Il vaut void si la fonction ne renvoie rien (ne comporte pas d'instruction return). Signature (ou en-tête) d'une fonction : c'est la ligne importante à connaître pour l'utilisateur de la fonction car elle donne le «mode d'emploi» de la fonction (le nom, les paramètres d'entrée et le type de sortie). Elle est formée de la déclaration de l'identificateur de la fonction suivie, entre parenthèses, par la liste de ses paramètres formels séparés par des virgules. Par exemple, en java : void println(string s) demande une chaîne et ne renvoie rien, double random() ne demande rien et fournit un décimal, void echange(int a, int b, double[] t) nécessite deux entiers ainsi que la référence à un tableau d'entiers et ne renvoie rien. PAGE 1 SUR 7
2 Éléments de cours : vision intensive ou extensive d'une classe Les propriétés des objets sont complètement spécifiées : tous les attributs d un objet ont une valeur. Plusieurs objets de même catégorie peuvent avoir les mêmes attributs (la même structure de description) avec des valeurs différentes. void int valeur void Chrono void int pas valeur : 4 valeur : 10 valeur : 0 Chrono 3 Chrono 6 Chrono 5 pas : 2 pas : 1 Chrono 1 pas : 1 valeur : 201 Chrono 4 valeur : 201 Chrono 2 pas : 3 pas : 1 définition intensive valeur : 1036 pas : 2 (partie de la) définition extensive Définitions d'une classe. La description d'une classe regroupe des propriétés qui peuvent être vues comme des contraintes à respecter ; c'est la définition intensive de la classe exprimée ici dans un formalisme proche de java. Les objets qui respectent ces contraintes sont des instances de la classe. L'ensemble des instances d'une classe est la définition extensive de la classe. Le lien entre chaque instance et la classe est appelé lien. Dans un langage objet (orientée objet), ce ne sont pas les objets qui sont décrits mais les classes, qui sont les catégories abstraites auxquelles appartiennent les objets de structures de description identiques 1. Les objets appartenant à une classe sont dits des instances de la classe, dès lors qu elles la spécifient totalement 2. Une classe peut être vue de deux manières : 1. Vision intensive (description). Une classe est un modèle ou schéma (frame) pour des objets (les instances). La classe est alors définie par sa description, c est-à-dire l ensemble des contraintes posées sur la description de ces objets. Cet ensemble de contraintes est la définition intensive ou intension de la classe. En java, cette définition est la description de la classe, qui contient tout ce que définit le programmeur. Elle comprend l ensemble des attributs et des méthodes qui seront partagés par les instances. La description de l'instance doit alors s'unifier avec celle de void void void Chrono Chrono 1 int valeur int pas valeur : 0 pas : 1 1 Dans un langage quelconque, un programme est toujours abstrait. Les données sont fournies au cours de l utilisation du programme. Dans un langage objet, les données seront les valeurs des attributs des instances et des valeurs supplémentaires apportées par l utilisateur. 2 «instance» est un anglicisme. En anglais, une instance d une entité générique abstraite est un exemple, une occurrence de cette entité, c est-à-dire une entité spécifique, précise, qui satisfait aux contraintes posées sur l entité générique. PAGE 2 SUR 7
3 la classe, c'est-à-dire que, à chaque propriété de l'instance : un couple attribut-valeur, doit correspondre un couple attribut-type dans la description de la classe, tel que les noms des attributs soient les mêmes et que la valeur corresponde au type. Voir ci-dessus. 2. Vision extensive (population). La classe est aussi définie par l ensemble non délimité d objets qui respectent la définition intensive de la classe. Cet ensemble est dit définition extensive ou extension de la classe. Le lien entre une instance I et une classe C à laquelle elle appartient est le lien. On dit que I C (dans l'exemple pour chaque i, chrono i Chrono). Il est représenté par une flèche de l'instance à la classe (Ce sont les flèches qui figurent dans la figure précédente). Application en java Description d'une classe Voilà un exemple de description de classes : class Disque { Point centre; double rayon; double getperimetre() { return 2*Math.PI*this.rayon; } double getsurface() { return Math.PI*this.rayon*this.rayon; } // modifie la taille du cercle d'un facteur donné void echelle(double facteur) { rayon=this.rayon*facteur; } } Disque.java définition d'attributs définition de méthodes class Point Point.java { double absc,ord; } Description d'une classe. La définition de chaque membre (attribut ou méthode) passe par l'association d'un identificateur à un type (déclaration). Le type peut être un type de base (int, double, char ) ou le nom d'une classe. Pour un attribut, le type représente le domaine (de valeurs) de l'attribut, c'est-à-dire l'ensemble de ses valeurs possibles (son domaine de définition). Pour une méthode, comme pour une fonction, le type est celui de la donnée qu'elle renvoie (void si aucune donnée n'est renvoyée.). Éléments importants sur la description des classes en java noms de la classe et du fichier qui la contient. Le fichier qui contient une classe doit être nommé comme cette classe en ajoutant l'extension java. Dans l'exemple ci-dessus, les fichiers contenant les classes Disque et Point sont respectivement stockées dans des fichiers Disque.java et Point.java. À noter que cette contrainte est invisible dans l'environnement BlueJ qui prend en charge la gestion des fichiers sans que l'utilisateur ait à faire un quelconque choix. portée 1 des membres. Les identificateurs des membres sont utilisables dans toute la classe, quel que soit l'ordre dans lequel ils sont déclarés. Il est donc possible d'intercaler les définitions d'attributs et de méthodes ou d'utiliser un membre dans une partie de la description de la classe qui précède sa définition (voir ci-contre). paramètres formels des méthodes. Comme pour les fonctions, il ne faut mettre en paramètre formel d'une class Disque { Point centre; double getperimetre() { return 2*Math.PI*rayon; } double rayon; 1 La portée ou visibilité d'un identificateur est la zone où il est connu, donc utilisable. PAGE 3 SUR 7
4 méthode que les données nécessaire à son fonctionnement. De ce fait, dans les exemples ci-dessus, la plupart des méthodes ne nécessitent pas de paramètre car elle utilisent uniquement les attributs. La méthode echelle est un cas particulier dès lors qu'elle nécessite la donnée d'un facteur d'échelle qui ne figure pas dans la classe. Les paramètres formels des méthodes ne comportent donc que les informations nécessaires qui sont extérieures à la classe et doivent être fournies par l'utilisateur de la méthode. Instanciation d'une classe Une fois qu'une classe a été compilée avec succès, il est possible de créer des instances de cette classe. L'instruction de création est new. Elle permet de réserver de la mémoire pour stocker le nouvel objet et renvoie l'adresse du début de la zone allouée. Dans le cadre de l'exemple précédent, en java, on peut avoir par exemple la suite d'instructions suivantes : Point p1=new Point(); p1.absc=1;p1.ord=1; Disque d=new Disque(); d.rayon=1; d.centre=p1; création d'une nouvelle instance de la classe Point affectation des abscisses et ordonnées du nouveau point création d'un nouveau disque affectation du rayon du nouveau disque affectation au centre du point créé. Utilisation d'une instance. La création d'une instance en java se fait toujours grâce à l'instruction new sauf pour certains objets particuliers, les String et les tableaux, dont les instances peuvent directement être écrites avec une syntaxe particulière. Par ailleurs, nous verrons qu'il est possible de spécifier des paramètres à la création d'une instance (nous pourrions par exemple avoir «new Point(1,1)» en spécifiant directement les abscisse et ordonnée initiales du nouveau point). Pour ce faire, nous utiliserons la notion de constructeur qui sera introduite plus tard. Exercices Faites un compte-rendu en format numérique qui contient vos réponses aux questions posées. Vous n'êtes pas tenu de le faire dans une seule séance mais n'en passez pas plus de deux. Ne faites pas tout si vous n'avez pas le temps ; privilégiez la qualité à la quantité. Une fois ce compte-rendu rédigé, envoyez-le moi (joel.savelli@u-bourgogne.fr) en n'oubliant pas de spécifier LPSIL et CI3 dans l'objet du message (n'oubliez pas non plus d'écrire votre nom dans le document). Exercice 1. Manipulation de BlueJ Utilisez BlueJ pour construire dans un même projet Geom les classes Disque et Point données plus haut en exemple (Description d'une classe). classe Main Pour utiliser les classes ainsi créées, il est possible de définir une classe (par exemple une classe Main) comportant une méthode main comme celle vue à la première séance. Le corps de cette méthode peut contenir un code comme celui de la figure précédente (Utilisation d'une instance). 1. En utilisant le menu contextuel associé à l'icone de la classe Disque, tentez d'exécuter les méthodes getsurface, getperimetre et echelle. Que se passe t-il? (ou plutôt que ne se passe t-il pas?). Expliquez cette situation. Si vous n'y parvenez pas, demandez de l'aide. 2. Écrivez dans un fonction main d'une classe Main le code qui permet de représenter la situation de la figure «Définition d'objets à partir d'autres objets» de la fiche «II. Principes généraux ; encapsulation (base)». Testez ce code en lançant la fonction Main.main("") à l'aide de la souris. 3. En utilisant aussi la souris, exécutez directement la méthode new associée à une classe pour créer une instance de cette classe. La machine propose PAGE 4 SUR 7
5 un nom, modifiable pour l'instance (en fait, les instances n'ont pas de nom ; il s'agit plutôt d'une variable qui référence l'instance). Créez ainsi une instance de Point et de Disque. Remarquez la zone de l'interface BlueJ (zone de dépôt d'objets) dans laquelle les icones de ces instances apparaissent (en bas à droite de la page précédente). Faites afficher les contenus de ces instances en cliquant sur leur icone. 4. Dans cette situation, tentez d'exécuter à nouveau les méthodes getsurface, getperimetre et echelle. Déduisez-en le contexte dans lequel ces méthodes peuvent être exécutées. Expliquez pourquoi. Demandez de l'aide si vous n'y parvenez pas. Code Pad (partie qui n'a pas à figurer dans le compte-rendu) Le «Code Pad» est une zone qui figure en bas à droite de l'interface de BlueJ. Elle permet d'évaluer des expressions et d'exécuter des lignes de code sans compilation. Plus précisément, il est possible d'effectuer les actions suivantes : 1. Évaluer une expression java ; ci-contre une expression numérique). Faites quelques essais de calcul numérique y compris mettant en jeu des fonctions sophistiquées (par exemple : Math.sin(Math.PI/2) ou Math.random()). Notez qu'il n'y a pas de «;» à placer en fin de ligne dès lors que c'est une expression que l'on calcule et pas une instruction que l'on exécute (le «;» est un terminateur d'instruction). Code Pad 2. Il est aussi possible de calculer des expressions mettant en jeu des objets et des classes. Par exemple, dans l'exemple ci-contre l'évaluation de l'expression : new Point() renvoie une valeur qui est l'adresse de l'instance de la classe Point créée. Le Code Pad n'affiche pas cette adresse mais plutôt la référence à cette instance représentée par une icône (en tout petit à droite). Il est alors possible de faire glisser cette icône dans la zone de dépôt d'objets et d'utiliser le menu contextuel de l'icone de l'instance pour lancer ses méthodes. Faites des essais de création d'instances et d'exécution de leurs méthodes par cette méthode. En utilisant cette technique, tentez de réaliser l'équivalent de la suite d'instructions de l'encadré «u- tilisation d'une instance». Notez que les affectations des valeurs aux attributs des instances sont des instructions et qu'elles doivent être suivies d'un «;». Notez aussi que les instances qui apparaissent dans la zone de dépôt d'objet peuvent être référencées dans le Code Pad par le nom que vous leur avez donné. Exercice 2. Plusieurs exemples En utilisant le modèle de l'exemple «Description d'une classe» et votre travail du TD précédent, utilisez BlueJ pour construire complètement (avec le corps des méthodes) les classes relatives aux situations suivantes. Vous devez faire un projet par situation, qui peut contenir une ou plusieurs classes suivant les besoins. Compilez les classes au fur et à mesure. En utilisant soit une classe Main, soit le Code Pad et la zone de dépôt d'objets, faites des essais d'exécution que vous intégrerez à votre compte-rendu. une planète. Les méthodes doivent permettre de donner les caractéristiques d'une planète et de les restituer globalement. PAGE 5 SUR 7
6 une personne, une calculatrice. Elle doit comporter un attribut représentant l'affichage, les méthodes qui permettent d'entrer les données, de faire les calculs et celle qui restitue le contenu de l'affichage. un automate distributeur de boissons. On doit pouvoir entrer des pièces de divers montants (avec vérification que le montant en question correspond à une valeur réelle). Il doit pouvoir être possible de choisir sa boisson, de signaler si la somme d'argent introduite est insuffisante, de signaler sinon que la boisson a été distribuée, et d'afficher le crédit restant. un parking (on s'intéresse à la gestion du parking). une bibliothèque (on s'intéresse à la gestion des livres qu'elle contient), une date. Vous devez au moins construire les méthodes qui vérifient que : l'année de la date est ou non bissextile (il ne faut pas afficher le résultat mais renvoyer une valeur booléenne). Vous pouvez vous documenter sur internet pour savoir comment faire. la date est valide. Critiques Comme précédemment, indiquez dans votre compte-rendu ce qui vous paraît incorrect, incomplet ou simplement surprenant dans la partie de cours abordée dans ce TD. Indiquez là aussi ce que vous trouvez peu clair. Pour aller plus loin. Bonne représentation Il peut y avoir des difficultés pour choisir de représenter telle ou telle propriété ou notion et de telle ou telle manière. Voilà quelques exemples de problèmes de représentation qui peuvent subvenir : 1. Attribut ou méthode? Dans l'exemple ci-dessus «Description d'une classe», le choix a été de faire apparaître les notions de centre et de rayon sous forme d'attributs et la surface sous forme de méthode. Pourtant, ce sont trois éléments qui définissent l'état d'un disque et pas son comportement. La raison en est qu'il est suffisant de définir un disque par son centre et son rayon ; ce sont ses propriétés essentielles. Les autres propriétés peuvent être dérivées à partir de ces propriétés de base et doivent même l'être (tout ce qui peut être automatisé doit l'être). La méthode d'accès à la surface n'est pas un comportement de l'objet mais bien une fonction qui lui est applicable. Par ailleurs, dans la suite du cours, tous les accès aux informations sur les objets se feront grâce à des méthodes particulières appelées accesseurs. Pour l'utilisateur, il n'y aura alors plus de différence visible entre les attributs essentiels et dérivables. 2. Limites de la représentation. Dans un cadre informatique, comme dans celui de n'importe quelle modélisation, il ne s'agit pas de représenter exhaustivement le réel. La représentation formelle (modèle) que représente la description d'une classe est effectuée dans des perspectives précises. L'étendue de la représentation doit être limitée par ces perspectives. Par exemple, s'il s'agit de gérer un parking uniquement pour connaître le nombre de places disponibles pour de nouveaux entrants, il est inutile de prévoir la description des voitures contenues dans le parking. Le nombre de voitures est une donnée suffisante. 3. Représentation ou gestion. Une classe ou une instance a deux fonctions : représenter un objet réel (qui peut être abstrait). La classe ou l'instance comprend alors des attributs ou méthodes qui correspondent à des propriétés de l'objet réel. Par exemple, un PAGE 6 SUR 7
7 disque comprend des attributs pour représenter son centre et son rayon et des méthodes pour calculer son périmètre et sa surface. gérer l'objet informatique. La création d'une instance, l'affichage de ses propriétés, l'accès à ses attributs, sont des fonctions d'une classe ou d'une instance qui n'ont pas de sens dans la réalité, mais elles sont nécessaires pour que le programme fonctionne. Il est nécessaire d'ajouter des attributs ou des méthodes pour répondre à ces besoins mais il est nécessaire de bien les distinguer des attributs ou méthodes de représentation. PAGE 7 SUR 7
TP 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é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é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é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é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é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étailI. Introduction aux fonctions : les fonctions standards
Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons
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étailPlan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml
OCL Object Constraint Language Le langage de contraintes d'uml Plan 1. Introduction 2. Les principaux concepts d'ocl Object Constraint Language 1 Object Constraint Language 2 Exemple: une application bancaire
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é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é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é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étailSeance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.
Seance 2: Complétion du code de jeu. (durée max: 2h) Mot clé const et pointeurs: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Implémentez jeu_recupere_piece
Plus en détailBANQUES DE DONNÉES PÉDAGOGIQUES
223 Daniel BURET, Jean-Claude BLANCHARD. HISTORIQUE L'EPI a entrepris en 1989 de créer des bases d'énoncés mathématiques destinées aux enseignants pour la production de documents et accompagnées d'un outil
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étailChapitre 1 : Introduction aux bases de données
Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données
Plus en détailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
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é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étailPremiers pas sur e-lyco
Premiers pas sur e-lyco A destination des parents, ce document présente les premiers éléments pour accéder aux services de l'ent e-lyco d'un lycée. Que signifient ENT et e-lyco? ENT = Espace ou Environnement
Plus en détailLe chiffre est le signe, le nombre est la valeur.
Extrait de cours de maths de 6e Chapitre 1 : Les nombres et les opérations I) Chiffre et nombre 1.1 La numération décimale En mathématique, un chiffre est un signe utilisé pour l'écriture des nombres.
Plus en détailRMI le langage Java XII-1 JMF
Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine
Plus en détailJava 7 Les fondamentaux du langage Java
184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque
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étail2 e édition JAVA 5 et 6. Jérôme Bougeault. TSoft et Groupe Eyrolles, 2003, 2008, ISBN : 978-2-21212250-3
2 e édition JAVA 5 et 6 Jérôme Bougeault TSoft et Groupe Eyrolles, 2003, 2008, ISBN : 978-2-21212250-3 Classes et objets Les constructeurs Propriétés Les méthodes L héritage Les interfaces Les relations
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étailLangage Java. Classe de première SI
Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les
Plus en détailMEDIAplus elearning. version 6.6
MEDIAplus elearning version 6.6 L'interface d administration MEDIAplus Sommaire 1. L'interface d administration MEDIAplus... 5 2. Principes de l administration MEDIAplus... 8 2.1. Organisations et administrateurs...
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étailProgrammation Objet - Cours II
Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à
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étailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailLe meilleur de l'open source dans votre cyber cafe
Le meilleur de l'open source dans votre cyber cafe Sommaire PRESENTATION...1 Fonctionnalités...2 Les comptes...3 Le système d'extensions...4 Les apparences...5 UTILISATION...6 Maelys Admin...6 Le panneau
Plus en détailVOS PREMIERS PAS AVEC TRACENPOCHE
Vos premiers pas avec TracenPoche page 1/16 VOS PREMIERS PAS AVEC TRACENPOCHE Un coup d'oeil sur l'interface de TracenPoche : La zone de travail comporte un script, une figure, un énoncé, une zone d analyse,
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
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étailSHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5
SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N
Plus en détailCours Informatique Master STEP
Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions
Plus en détailStructurer ses données : les tableaux. Introduction à la programmation
Structurer ses données : les tableaux Introduction à la programmation Plan du document Introduction Introduire la notion de type Types primitifs Types composés Tableaux de type primitif Page 2 Notion de
Plus en détailCréer un tableau avec LibreOffice / Calc
Créer un tableau avec LibreOffice / Calc Réaliser des tableaux LibreOffice / Calc permet de créer des tableaux facilement en utilisant les cellules. En premier lieu, il faut prévoir le nombre de colonnes
Plus en détailGuide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons
Guide d'utilisation OpenOffice Calc AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons 1 Table des matières Fiche 1 : Présentation de l'interface...3 Fiche 2 : Créer un nouveau classeur...4
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étailInstallation et paramétrage. Accès aux modèles, autotextes et clip- art partagés
DSI Documentation utilisateurs Installation et paramétrage Accès aux modèles, autotextes et clip- art partagés Auteur : Yves Crausaz Date : 21 septembre 2006 Version : 1.04 Glossaire OOo : Abréviation
Plus en détailÉcrire en ligne et de manière collaborative avec Etherpad. Pour les utilisateurs (enseignants, élèves)
Écrire en ligne et de manière collaborative avec Etherpad Pour les utilisateurs (enseignants, élèves) 18/12/2014 Date : 18/12/2014 Editeur : Auteur(s) : Délégation Académique du Numérique pour l'éducation
Plus en détailPolymorphisme, la classe Object, les package et la visibilité en Java... 1
Polymorphisme, la classe Object, les package et la visibilité en Java. Polymorphisme, la classe Object, les package et la visibilité en Java.... 1 Polymorphisme.... 1 Le DownCast... 4 La Classe Object....
Plus en détailOASIS www.oasis-open.org/committees/xacml/docs/docs.shtml Date de publication
Statut du Committee Working Draft document Titre XACML Language Proposal, version 0.8 (XACML : XML Access Control Markup Language) Langage de balisage du contrôle d'accès Mot clé Attestation et sécurité
Plus en détailGOL502 Industries de services
GOL502 Industries de services Conception d un service Partie IIb Version 2013 Introduction Conception d un service partie IIb Nous verrons dans ce chapitre Modélisation d un service; Langage de modélisation
Plus en détail1/ Présentation de SQL Server :
Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture
Plus en détailLes Enseignants de l Ere Technologique - Tunisie. Niveau 1
Les Enseignants De l Ere Technologique - Tunisie - LE CLOUD COMPUTING TAT Tunisie 2014 Le Cloud Computing 1. Définition Les Enseignants de l Ere Technologique - Tunisie Le cloud computing (en français
Plus en détailPage 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>
Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances
Plus en détailCOMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL
COMMUNICATEUR BLISS COMMANDE PAR UN SENSEUR DE POSITION DE L'OEIL J. TICHON(1) (2), J.-M. TOULOTTE(1), G. TREHOU (1), H. DE ROP (2) 1. INTRODUCTION Notre objectif est de réaliser des systèmes de communication
Plus en détailCréation de site Internet avec Jimdo
Création de site Internet avec Jimdo Ouvrez votre navigateur internet ou Internet Explorer ou Mozilla Firefox Rendez vous sur la page http://fr.jimdo.com/ voici ce que vous voyez. 1=> 2=> 1. Le nom que
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étailMATHÉMATIQUES. Les préalables pour l algèbre MAT-P020-1 DÉFINITION DU DOMAINE D EXAMEN
MATHÉMATIQUES Les préalables pour l algèbre MAT-P020-1 DÉFINITION DU DOMAINE D EXAMEN Mars 2001 MATHÉMATIQUES Les préalables pour l algèbre MAT-P020-1 DÉFINITION DU DOMAINE D EXAMEN Mars 2001 Direction
Plus en détail1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
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étailv7.1 SP2 Guide des Nouveautés
v7.1 SP2 Guide des Nouveautés Copyright 2012 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,
Plus en détailManuel de l'utilisateur d'intego VirusBarrier Express et VirusBarrier Plus
Manuel de l'utilisateur d'intego VirusBarrier Express et VirusBarrier Plus Bienvenue dans le manuel de l'utilisateur d'intego VirusBarrier Express et VirusBarrier Plus. VirusBarrier Express est un outil
Plus en détailProcédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12
Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures
Plus en détailDirXML License Auditing Tool version 1.1 - Guide de l'utilisateur
DirXML License Auditing Tool version 1.1 - Guide de l'utilisateur Présentation Installation DirXML License Auditing Tool (DLAT) vous permet de déterminer le nombre de licences DirXML utilisées dans une
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é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étailUML. Diagrammes de classes (suite) Delphine Longuet. delphine.longuet@lri.fr
Polytech Paris-Sud Formation initiale 3 e année Spécialité Informatique Année 2014-2015 UML Diagrammes de classes (suite) Delphine Longuet delphine.longuet@lri.fr Opérations Opérations Service qui peut
Plus en détailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailA.-M. Cubat PMB - Import de notices à partir d un tableur Page 1 Source : http://amcubat.be/docpmb/import-de-notices
A.-M. Cubat PMB - Import de notices à partir d un tableur Page 1 Comme beaucoup de personnes, j'ai voulu récupérer les notices de mon ancien logiciel de gestion de bibliothèque. Vu qu'il ne prévoyait pas
Plus en détailALGORITHMIQUE ET PROGRAMMATION En C
Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2
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étailGuide de démarrage rapide Centre de copies et d'impression Bureau en Gros en ligne
Guide de démarrage rapide Centre de copies et d'impression Bureau en Gros en ligne Aperçu du Centre de copies et d'impression Bureau en Gros en ligne Pour accéder à «copies et impression Bureau en Gros
Plus en détailCRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE
CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE 2 ème partie : REQUÊTES Sommaire 1. Les REQUÊTES...2 1.1 Créer une requête simple...2 1.1.1 Requête de création de listage ouvrages...2 1.1.2 Procédure de
Plus en détailLes diagrammes de modélisation
L approche Orientée Objet et UML 1 Plan du cours Introduction au Génie Logiciel L approche Orientée Objet et Notation UML Les diagrammes de modélisation Relations entre les différents diagrammes De l analyse
Plus en détailINF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30
Examen intra 20 février 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Quelle influence peut avoir le typage dynamique sur la maintenabilité
Plus en détailOpenOffice Base Gestionnaire de Base de Données
OpenOffice Base OpenOffice Base Gestionnaire de Base de Données Version 2.3 / 2.4.1 Module d'introduction Document de présentation Contributions : Charles BURRIEL, Pauline CONSTANT, Frédéric PIRARD Jeffrey
Plus en détailPartie 1 : la construction du nombre chez l'enfant. Page 2. Partie 2 : Des jeux et des nombres Page 8
Partie 1 : la construction du nombre chez l'enfant. Page 2 Partie 2 : Des jeux et des nombres Page 8 1 La construction du nombre Le nombre est invariant : Le nombre ne change pas quelles que soient les
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é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étailB2i. LE B2i Brevet Informatique et Internet. Niveau : tous. 1 S'approprier un environnement informatique de travail. b2ico1.odt.
1 S'approprier un environnement informatique de travail 1.1) Je sais m'identifier sur un réseau ou un site et mettre fin à cette identification. 1.2) Je sais accéder aux logiciels et aux documents disponibles
Plus en détailRetrouver un mot de passe perdu de Windows
Retrouver un mot de passe perdu de Windows Vous avez perdu votre mot de passe Windows et il vous est impossible de vous en souvenir? Vous avez beau avoir essayé vos dizaines de mots de passe à l'ouverture
Plus en détailWindows Front-End Installation Guide HOPEX V1R1 FR
Révisé le : 5 novembre 2013 Créé le : 31 octobre 2013 Auteur : Jérôme Horber SOMMAIRE Résumé Ce document décrit les procédures et les paramétrages techniques nécessaires à l'installation, à la mise à jour
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étailModule SMS pour Microsoft Outlook MD et Outlook MD Express. Guide d'aide. Guide d'aide du module SMS de Rogers Page 1 sur 40 Tous droits réservés
Module SMS pour Microsoft Outlook MD et Outlook MD Express Guide d'aide Guide d'aide du module SMS de Rogers Page 1 sur 40 Table des matières 1. Exigences minimales :...3 2. Installation...4 1. Téléchargement
Plus en détailTD3: tableaux avancées, première classe et chaînes
TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première
Plus en détailImport des utilisateurs depuis Sconet et STSweb - mise à jour du 04/10/06
Import des utilisateurs depuis Sconet et STSweb - mise à jour du 04/10/06 Cette procédure permet de générer les utilisateurs du réseau en se passant des fichiers dbf générés par l'automate gep et qui sont
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étailMise à jour 46 de l ENT itslearning Août 2014
Mise à jour 46 de l ENT itslearning Août 2014 C'est bientôt la rentrée, et quelques mises à jour intéressantes vous attendent : un accès direct aux informations les plus pertinentes un processus de connexion
Plus en détailDocumentation Cobian
SOFT-AND-COM Documentation Cobian Installation et Utilisation Jérémy Cadot 04/06/2010 PRESENTATION : Cobian Backup est un programme multi-threads que vous pouvez utiliser pour planifier et sauvegarder
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étailNavigation dans Windows
Cours 03 Navigation dans Windows Comme je le disais en introduction, notre souris se révèle plus maligne qu'elle n'en a l'air. À tel point qu'il faut apprendre à la dompter (mais c'est très simple, ce
Plus en détailPrésentation de GnuCash
Par Jean-Marc St-Hilaire De JMS Informatique Enr. Jean-Marc St-Hilaire a une formation en programmation et en comptabilité (H.E.C.) Cette présentation est disponible à www.jmsinformatique.com/ateliers
Plus en détailRappels Entrées -Sorties
Fonctions printf et scanf Syntaxe: écriture, organisation Comportement Données hétérogènes? Gestion des erreurs des utilisateurs 17/11/2013 Cours du Langage C ibr_guelzim@yahoo.fr ibrahimguelzim.atspace.co.uk
Plus en détailipra*cool v 1.08 guide de l utilisateur ipra*cool v.1-08 Guide de l'utilisateur ipra*cool v 1.08 1
ipra*cool v.1-08 Guide de l'utilisateur ipra*cool v 1.08 1 Sommaire 1 ipra*cool en bref 2 Démarrage d' ipra*cool 2.1 Initialisation du logiciel ipra*cool ( sur MOBILE et PC) 2.1.1 Vérification des connexions
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étailManuel d'utilisation Force.com
Manuel d'utilisation Force.com: Salesforce Summer '10 Manuel d'utilisation Force.com Copyright 2000-2010 salesforce.com, inc. Tous droits réservés. Salesforce.com, le logo "no software" et Team Edition
Plus en détailLES NOMBRES DECIMAUX. I. Les programmes
LES NOMBRES DECIMAUX I. Les programmes Au cycle des approfondissements (Cours Moyen), une toute première approche des fractions est entreprise, dans le but d aider à la compréhension des nombres décimaux.
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Plus en détailInfo0604 Programmation multi-threadée. Cours 5. Programmation multi-threadée en Java
Info0604 Programmation multi-threadée Cours 5 Programmation multi-threadée en Java Pierre Delisle Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique 18 février 2015 Plan
Plus en détailUE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative
Plus en détailPerl Console. Votre compagnon pour développer en Perl. Les Journées du Perl 2007 16, 17 novembre, Lyon. Alexis Sukrieh <sukria@sukria.
Perl Console Votre compagnon pour développer en Perl Les Journées du Perl 2007 16, 17 novembre, Lyon Alexis Sukrieh Plan Pourquoi une console? Le modèle «Read-Eval-Print-Loop» Dépendances
Plus en détail