La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Introduction à la programmation objet Langage Java SI3 Débutant programmation Déry Anne Marie :

Présentations similaires


Présentation au sujet: "Introduction à la programmation objet Langage Java SI3 Débutant programmation Déry Anne Marie :"— Transcription de la présentation:

1 Introduction à la programmation objet Langage Java SI3 Débutant programmation Déry Anne Marie :

2 A quoi sert la programmation ? Passer dun problème réel à une résolution informatique calculs mathématiques gestion de commandes jeux Analyser le problème, concevoir une solution, lécrire dans un langage informatique, lexécuter sur une machine

3 Types de programmation / langages de programmation Programmation Procédurale : Pascal, C, Fortran Programmation Fonctionnelle : Lisp, Scheme… Logique : Prolog Objet : C++, Java …

4 Langages de programmation / Environnements de programmation Ecrire un programme, le transformer en code binaire, lexécuter, le documenter, le tester…. En Java –Editeur classique : emacs, kwrite et commandes systèmes –BlueJ –Eclipse

5 Objectifs du cours Apprendre les principes de base de la programmation objet (premier niveau) Apprendre les principes de base de lalgorithmique Etre capable décrire un code « propre » : lisible, maintenable, deverminable Savoir écrire un petit logiciel en Java

6 Contenu du cours Introduction aux objets Algorithmes de base Structure de données : tableau Listes Tris de données Qualité et tests de code

7 Objets/instances et classes Les objets (instances) représentent des entités du monde réel relatives au problème à traiter –Une voiture rouge de marque Ferrari –un carré de taille 4cm de côté –Un échiquier de 16 cases Les classes représentent tous les objets Ce sont les modèles des instances –Voiture –Carré –Echiquier –Case Plusieurs instances peuvent être créées à partir dune classe

8 Méthodes et attributs (variables dinstances) Des opérations peuvent être appliquées à des objets : ce sont les méthodes. On parle dinvocation de méthode Les méthodes ont des paramètres afin de passer des données à appliquer. –accélérer (vitesse) maFerrari.accelerer(30); –déplacer(distance) –placer(unPion,uneCase) Les attributs (variables dinstances) sont les données stockées dans les instances La classe définit les méthodes (nom, liste de paramètres, algorithme…) –Que fait la méthode accélérer ? (changer la vitesse de la voiture) –Que fait la méthode déplacer ? (changer les coordonnées du carré) –Que fait placer(Pion,Case) ? Vérifier si un Pion peut être placé sur une case et si oui laffecter. La classe définit les attributs qui décrivent une instance; chaque instance ayant sa valeur propre. On parle de létat dun objet –La couleur,la marque, la vitesse des voitures. Ma Ferrari est rouge et roule à 130 –Les coordonnées et la taille dun côté dun carré….

9 Etat du Cercle circle1 Quel est le nom de la classe ? Quel est le nom de linstance ? Quelles sont les variables dinstances ? Quel est leur type ? Attention : il y a des conventions de nommage

10 Instances dune classe Comment crée-t-on une instance ? Comment modifier la valeur dune variable dinstance de circle1 ? Comment afficher les positions du circle2 ? Donner des exemples de méthodes ?

11 Structure dune méthode Une méthode a une entête et un corps Lentête définit la signature dune méthode. public int getXPosition() public void showCoord() Le corps contient les lignes de code Nom de la méthode Liste de paramètres Type de retour visibilité

12 Structure dune classe public class Circle { // Variables dinstances : diameter, yPosition, xPosition // Constructeurs : Circle(int x, int y) // Méthodes : setYPosition(int y); printCoord() } Marqueurs du bloc de début et fin de la classe : {} Nom de la classe

13 Variables dinstances public class Circle { private int xPosition; private int yPosition; private int diameter; private String color; private boolean isVisible; ……. } Visibilité : private, public, protected –Une variable dinstance est toujours privée a priori Types de données : int, String, boolean, isVisible, Circle –Un type est soit un type de base soit une classe Java Standard soit une classe définie par le programmeur Nom de variable : Attention aux conventions de nommage –Commence par une miniscule, séparation des mots par une majuscule

14 Ils ont le même nom que la classe Ils stockent les valeurs initiales des attributs le plus souvent grâce aux valeurs des paramètres public Circle(int x,int y) { xPosition = x; yPosition = y; diameter=5; color="blue" isVisible=true; } public Circle(int x,int y,String c,int diameter) { xPosition = x; yPosition = y; diameter=this.diameter; color=c; isVisible=true; } Il peut y avoir plusieurs constructeurs dans une classe. Il y a un constructeur par défaut sans paramètre this(x,y); Constructeurs : initialisation des instances 5 instructions daffectations

15 Création via BlueJ Instruction de création dinstances Nom attribué par BlueJ ATTENTION : les instances nont pas de nom en Java On les affecte à des variables : Voiture maFerrari=new Voiture("Ferrari", "rouge");

16 Méthodes accesseurs Un type de méthode spécifique Qui fournit les informations (valeurs des variables dinstances) dun objet public int getXPosition() { return xPosition; } public String getColor() { return color; } Type de retour : int, String… –La méthode renvoie une valeur correspondant au type de retour Nom de méthode : getXPosition, getColor ATTENTION Convention de nommage Liste de paramètres : vide – linformation est dans linstance on na pas besoin de données extérieures Marqueurs du Bloc de début et fin de la méthode : {} Visibilité : public –Peut être utilisée à lextérieur de la classe, dans une autre classe Instruction : instruction return –Il y a toujours un return quand une méthode renvoie une valeur de retour –Cest la dernière instruction exécutée

17 Méthodes mutator Méthode spécifique pour changer létat dun objet... – contient une instruction daffectation : affectation des variables dinstances. – reçoit des paramètres : valeur à affecter. public void setXPosition (int x) { xPosition = x; } public void setColor(String x) { color = x; } Type de retour (void) : ne renvoie rien Nom de méthodes : setXPosition, setColor(String x) ATTENTION au convention de nommage Paramètres : int x, String x Visibilité : public Instruction : affectation dune variable dinstances xPosition = x;

18 Affichage public void showCoord() { System.out.println(" Les coordonnées sont :"); System.out.println(" x : " + xPosition + " y: " + yPosition ); } public String toString() { return " x : " + xPosition + " y: " + yPosition + " diamètre: " + diameter + " couleur: " + color; } …. System.out.println(circle1); System.out.println(circle1.toString()); Instruction décriture Méthode prédéfinie pour laffichage dune instance Concaténation de chaines


Télécharger ppt "Introduction à la programmation objet Langage Java SI3 Débutant programmation Déry Anne Marie :"

Présentations similaires


Annonces Google