1a-IFT785-PlanDeCours

publicité
IFT 785
Approches Orientée Objets
Plan de cours
Information générale

Professeur :
–
–
–
Sylvain Giroux
[email protected]
D4-1010-10

Session : Hiver 2005
Crédits : 3

Horaire :

–

jeudi 18h45 – 21h45
Consultation :
–
Mardi 10h30 - 12h00
Objectifs généraux

Connaître les concepts des approches orientées
objets;

Concevoir le développement de systèmes
informatiques dans une optique orientée objets;

Comparer des méthodes et outils orientés objets afin
de pouvoir choisir ceux qui conviennent le mieux
dans le développement de systèmes particuliers.
Objectifs spécifiques

Décrire les concepts fondamentaux de la programmation par objets ainsi que leurs
variations dans différents langages de programmation, en particulier Java;

Décrire et appliquer UML;

Décrire et appliquer les principaux patrons de conception (design patterns);

Décrire et appliquer les procédures de factorisation de programmes orientés objets;

Utiliser et définir des frameworks orientés objets;

Appliquer et intégrer les procédures de tests dans les programmes objets;

Décrire et appliquer l’approche de conception “programmation extrême”;

Manipuler la réflexivité et le concept de métaclasses;

Décrire et utiliser la programmation par acteurs.
Contenu

Concepts de base : objet, acteur, agent, classe, message,
héritage, délégation, instanciation, clonage, spécialisation,
différenciation, classe abstraite, généricité, polymorphisme,
persistance;

Concepts avancés: frameworks, métaclasses, réflexivité,
introspection;

Méthodes d'analyse et de conception orientées objets: UML,
programmation extrême;

Étude de langages orientés objets, tels que Smalltalk, Java,
ObjVlisp, ABCL;

Outils pour le développement orienté objet: JUnit.
Organisation du cours
Semaine par semaine
Evaluation

Exercices
–

Projet individuel
–

Non évalués
50 %
Final
–
50 %
Durée : 2h50
Références








Agha, Gul, Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 1986.
Beck, Kent, Extreme Programming Explained: Embrace Change, Addison-Wesley Pub Co; 1999
Beck, Kent, Test Driven Development, Addison-Wesley, 2002.Bloch, Joshua, Effective Java Programming
Language Guide, Addison-Wesley, 2001.
Briot, Jean-Pierre, From Objects to Actors: Study of a Limited Symbiosis in Smalltalk-80, LITP 8858 RXF, Université Pierre et Marie Curie, France, sept. 1988.
Cointe, Pierre, Metaclasses are First Class: the ObjVlisp model, OOPSLA '87 Proceedings, 1987,
Orlando, Florida, SIGPLAN Notices, vol. 22, no 12, pp. 156-167.
Fowler, Martin, UML Distilled: A Brief Guide to the Standard Object Modeling Language, Addison-Wesley,
3rd ed. 2003.
Fowler, Martin, et al., Refactoring: Improving the Design of Existing Code, Addison-Wesley; 1999
Gamma, Erich and Kent Beck, JUnitTest Infected: Programmers Love Writing Tests, Java Report, July
1998, Volume 3, Number 7Gamma, Erich, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns,
Addison-Wesley;1995 Goldberg, Adele , Smalltalk-80, The Language, Addison Wesley Professional; 1989

Liskov, Barbara, Program Development in Java, Abstraction, Specification and Object-Oriented
Design, Addison-Wesley, 2001.

Roberts, Don, Ralph Johnson, Evolving Frameworks A Pattern Language for Developing ObjectOriented Frameworks.
Sun, Java Tutorial, http://java.sun.com/docs/books/tutorial/
Sun Microsystems, JavaBeans, v 1.01, 1997. (beans101.pdf)
Yonezawa, A., et al., Object-Oriented Concurrent Programming in ABCL/1, OOPSLA 86
Proceedings, SIGPLAN Notices, vol. 21, no 11, pp. 258-268



Logiciels

Editeur UML : Rational Rose for Java

Java : JSE 1.5.0 ou JSE 1.4.2
–

IDEs : Eclipse
–

http://java.sun.com
http://www.eclipse.org/
Tests : JUnit
–
http://www.junit.org/index.htm
Téléchargement