P O O 1 Programmation Orientée Objet : Application en JAVA -Partie 1- 1 Cours P

P O O 1 Programmation Orientée Objet : Application en JAVA -Partie 1- 1 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI -Partie 1- P O O 1 OBJECTIFS ET PRE-REQUIS L'objectif de ce cours est d'apprendre aux étudiants les concepts de base de la programmation orientée objet appliquée au langage Java (Ils apprendront à programmer des interfaces homme–machine simple et à ce connecter via java à une base de donnée). PRE-REQUIS OBJECTIFS 2 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI PRE-REQUIS Le bon déroulement de ce cours suppose la maîtrise des notions de base de l’algorithmique et des connaissances en programmation structurée appliquée au langage C . P O O 1 Chapitre 1 : Développement logiciel Chapitre 2 : Le langage Java Chapitre 3 : Objet et classe-Application à Java Chapitre 4 : Mes premiers applications en ligne de commande Chapitre 5 : Environnement de développement : Etude IDE Eclipse Chapitre 6 : Héritage-Polymorphisme -Classe abstraite Chapitre 7 : Paquetage en java SOMMAIRE 3 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI Chapitre 7 : Paquetage en java Chapitre 8 : Exception Chapitre 9 : Classe String Chapitre 10 : Programmation dynamique Chapitre 11: Interface graphique AWT et SWING Chapitre 12 : Les applets Chapitre 13: La connexion à une BD P O O 1 Cours : 2H par semaine TD/TP : 2H par semaine Devoir : 1 devoir après chaque chapitre du cours (Domicile et corrigé en cours QUIZ : Intervient après trois séances et sont comptés dans les évaluations (10mn) et 20 mn de correction Déroulement ------------------------ CC Devoir = 20 % Cours Evaluation 4 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI Moy CC = 0,2*Devoir + 0,3*QUIZ + 0,5*CC programmé Moy Projet = 0,65 *Projet de Groupe + 0,35*Certificat MOOC 56 Heures Devoir = 20 % QUIZ = 30% CC programmé = 50 % ------------------------- Projet Certification MOOC = 35 % (40% Certificat reçu + 60% En test) Projet de groupe = 65 % NB Heures P O O 1 Bibliographie Livres/articles, liens internet Jean Michel DOUDOUX, Développons en JAVA, http://www.jmdoudoux.fr/java,1999-2013 Gauthier Picard , Langage et Concepts de Programmation Orientée-Objet , École Nationale Supérieure des Mines de Saint-Étienne; Pôle Informatique 2008/2009. GUI Programming –Java, http://www3.ntu.edu.sg/home.ehchua/programming/java/J4a_GUI.html 5 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI MOOCs http://www3.ntu.edu.sg/home.ehchua/programming/java/J4a_GUI.html Emmanuel Puybaret, les cahiers du programmeur Java, 3ème édition, EYROLLES ohttps://www.coursera.org/course/initprogjava o5 Septembre -27 Octobre 2014 oEPFL ohttps://www.coursera.org/course/java-fr oFeb 17th 2014 (7 weeks long) oEPFL P O O 1 2 Méthodes et langages Langages de programmation 1 CHAPITRE 1 Développement Logiciel 3 6 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI 3 Ecriture d’un programme P O O 1 Méthodes et Langages Analyse Conception Implémentation Tests SADT, SA-RT, MERISE, OMT, UML, … Fortran, Cobol, C, SmallTalk, Ada, C++, Java, … 1 7 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI 7 Maintenance Cycle de développement ? Cycle de vie ? P O O 1 Les langages de programmation 2 Paradigme de programmation Un programme est une solution à un problème. Cette solution est formulée dans un langage de programmation suivant un style de programmation informatique appelé paradigme. Ce dernier fournit la vue qu’à le developpeur de l’exécution de son programme. Les paradigmes peuvent être regroupés en grandes familles dont les plus connues sont: La programmation impérative 8 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI 8 La programmation impérative La programmation Orientée objet La programmation déclarative La programmation évènementielle La programmation orientée agent La programmation orientée aspect La programmation concurrente La programmation séquentielle La programmation orientée contrat Nous allons nous intéresser dans les lignes qui suivent aux trois premiers types ou paradigmes P O O 1 Les langages de programmation 2 Programmation impérative C’est un paradigme pour lequel la résolution des problèmes se fait de façon séquentielle. Le style proposé consiste à décrire un ensemble d’opérations à être exécutées séquentiellement afin de modifier l’état du programme en question. On a pour ce paradigme, deux types de programmation : la programmation structurée et la programmation procédurale. Programmation structurée C’est en 1970 qu’on parle de ce style de programmation. Ce style a tendance à limiter l’utilisation de l’instruction goto à des cas inhabituels. Les langages comme PL/1 et 9 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI l’utilisation de l’instruction goto à des cas inhabituels. Les langages comme PL/1 et Pascal se trouvent dans la catégorie des langages qui adoptent ce style. Cependant tous les langages de programmation modernes intègrent ce paradigme à travers les structures de contrôle telles que while, for, if … then … else. Programmation procédurale Ce type de programmation malgré qu’il soit impératif se distingue assez bien de la programmation structurée. En plus d’être plus évolué, il intègre le paradigme structuré et permet pour une application de découper le code, l’organiser de sorte que celui-ci soit bien structuré, compréhensible et plus facile déboguer. En effet, ce paradigme comme son nom l’indique, introduit la notion de procédure qui est en fait une série d’instructions à exécuter. P O O 1 Les langages de programmation 2 Programmation Fonctionnelle Ce paradigme tient son origine du langage mathématique qui traite des fonctions. Une bonne compréhension de ce paradigme passe par une comparaison avec la programmation de type procédural. En effet, le paradigme fonctionnel se distingue fort de ce dernier en ce qui concerne la mutation des données. Le paradigme fonctionnel est conditionné à produire un résultat unique par transformations successives de l’ensemble des données d’entrées et tout cela sans affectation de variables. La notion de variable n’y est même pas applicable. Cela explique en quelques sortes le fait que les programmeurs sous le paradigme impératif ont souvent plus de difficultés à s’accommoder à ce paradigme que des néophytes. 10 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI s’accommoder à ce paradigme que des néophytes. Dans le paradigme fonctionnel, une application n’est alors vue que comme une fonction mathématique. Cependant il existe ce qu’on appelle les langages fonctionnels impurs qui en plus du paradigme fonctionnel permettent le paradigme impératif. Exemple de langage fonctionnel : Haskell, Lisp, Scheme Programmation Orientée Objet Les développeurs peuvent considérer le programme comme une collection d’objets en interaction. Elle consiste en la définition et l’assemblage de briques logicielles appelées objets (comme en Smalltalk) P O O 1 Les langages de programmation 2 Programmation Orientée Objet On peut distinguer dans ce paradigme : Programmation orientée prototype, qui simplifie et rend plus flexible la programmation orientée objet Programmation orientée classe, à comparer à la Programmation orientée prototype (dans le contexte de la programmation orientée objet) Programmation orientée composant (comme en OLE) Exemple de langage orienté objet : C++, Java, C#, Python,… 11 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI Programmation déclarative consistant à déclarer les données du problème, puis à demander au programme de le résoudre Programmation descriptive, à l'expressivité réduite, qui permet de décrire des structures de données (par exemple, HTML, XML ou Latex) Programmation fonctionnelle, avec laquelle un programme est une fonction au sens mathématique du terme Programmation logique, consistant à exprimer les problèmes et les algorithmes sous forme de prédicats (comme en Prolog) Programmation par contraintes, à comparer à la programmation logique P O O 1 Langages de programmation Traitement 1 Données Un programme est composé de plusieurs procédures (ou fonctions) : qui effectuent un traitement sur des données (procédure) qui retournent une valeur après leur invocation (fonction) Certains langages ne distinguent pas procédures et 2 Illustration Programmation impérative 12 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI Traitement 2 Traitement 3 Certains langages ne distinguent pas procédures et fonctions. Exemples de langages procéduraux ou fonctionnels : Fortran, Lisp, C, Pascal … P O O 1 Traitement 1 Données Rappels : EXEMPLE DE PROGRAMME STRUCTUREE EN C 2 Langages de programmation 13 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI 13 Traitement 2 Traitement 3 P O O 1 Langages de programmation Un programme est composé de plusieurs objets qui contiennent : des données "internes" des traitements manipulant ces données internes ou d'autres données Les données d'un objet sont appelés ses attributs et ses traitements sont ses méthodes (ou D D D T T T 2 Programmation orientée objet : illustration 14 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI et ses traitements sont ses méthodes (ou opérations). Exemples de langages orientés-objet : SmallTalk, C++, Java, … D D T T T P O O 1 Ecriture d’un programme 3 15 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI Extrait t MOOC EPFL Programmation Java P O O 1 Ecriture d’un programme 3 Des éléments de rappel : données et traitements 16 Cours POO 1- JAVA Dr. Ing/PhD Bernabé BATCHAKUI Extrait t MOOC EPFL Programmation Java P O O 1 Ecriture d’un programme 3 Variables et types Une variable est caractérisée par : oSon identificateur, qui est le nom par lequel la donnée est désignée oSon type, qui définit de quel « genre » est la donnée contenue dans la variable oSa valeur, exemple si la donnée est un nombre sa valeur pourra être 12 uploads/Ingenierie_Lourd/ cours-poo1-java-2014-2015-pdf.pdf

  • 46
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager