Programmation Orientée Objet (POO)
Java
SLM10H3U
Licence Informatique
2009-2010
Jean-Louis Lanet/Benoit Crespin/Julien Cartigny
[email protected]
Objectif du cours
• Découvrir un nouveau langage de programmation
• Réutiliser des notions de la programmation impérative
(langage C) et de la programmation objet (UML, C++)
• Découvrir des notions liées à la programmation objet
avancée, aux threads, aux interface graphiques etc.
• De la théorie à la pratique, un projet à développer.
Plan du cours
• 12 séances de 1,5 heures, 21h de TD, 21h de TP et votre projet.
• Trois intervenants JL Lanet, Benoit Crespin et Julien Cartigny
• Contenu
– Introduction
– Les types, les opérateurs, les tableaux
– Classe, objets héritage,
– Interface, classe abstraite, polymorphisme (2 séances)
– Exceptions
– Collection, itérateurs, type générique
– Flux et fichiers
– Programmation graphique (2 séances)
– Threads
– Applet et élément de la sécurité.
• Supports disponibles sur FOAD,
• QCM à réaliser avant chaque cours.
Objectif des TD/TP
• TD (14 séances) : reprendre les mécanismes vus en cours
et les appliquer à des problèmes de même nature, ou bien
explorer des concepts laissés de côté en cours
• TP (14 séances) : éditer, compiler puis exécuter des
programmes, et aussi utiliser la documentation
• Mini-projet (encadrement pendant certaines séances de TP)
objectif : réaliser un logiciel en Java !
Évaluation
• Première session
– Un partiel 1h30 : 25%
– Un écrit 1h30 : 50%
– Le mini projet : 25%
• Seconde session
– Écrit 1h30
Tous document personnel autorisé
– Votre voisin n’est pas document personnel
– Votre téléphone, votre pda, votre pc portable non plus
– Le support de cours, des livres (papiers), etc. sont des documents
autorisés..
Ressources
• De très nombreuses ressources sont disponibles sur le net.
• Java :
– http://java.sun.com/javase/downloads/index.jsp
• Eclipse : http://www.eclipse.org/
• Autres IDE sous Windows :
http://www.thefreecountry.com/programming/javaide.shtm
• Livres disponibles à la BU Sciences :
– M. Divay, La programmation objet en Java
– D. Flanagan, Java en concentré
– E. Puybaret, Java 1.4 et 5.0
– A. Tasso, Le livre de Java
– R. Chevallier, Le langage Java 5
– White, Hemphill Java 2 Micro Edition
Et sur le Web
• http://java.sun.com/ (en anglais)
• http://penserenjava.free.fr/
• http://fr.wikipedia.org/wiki/Java_(langage)
• http://www.wickedlysmart.com/HeadFirst/HeadFirstJava/HeadFirstJavaIndex.html
• http://java.developpez.com/faq/java/
• http://www.javafr.com/
• http://java.developpez.com/faq/java/?page=graphique_general_dessin
• http://perso.wanadoo.fr/jm.doudoux/java/tutorial/
Le très bon support de cours plus de 150 pages téléchargeable :
http://www.dil.univ-mrs.fr/~garreta/Polys/PolyJava.pdf
Mini projet
• Le sujet vous sera donné en Février,
• C’est un travail personnel,
• Il sera évalué lors de la dernière séance de TP en semaine
13 (semaine du 3 mai).
Any question ?