90 likes | 219 Views
IFT 785 Approches Orientée Objets. Plan de cours. Information générale. Professeur : Sylvain Giroux sylvain.giroux@USherbrooke.ca D4-1010-10 Session : Hiver 2005 Crédits : 3 Horaire : jeudi 18h45 – 21h45 Consultation : Mardi 10h30 - 12h00. Objectifs généraux.
E N D
IFT 785 Approches Orientée Objets Plan de cours
Information générale • Professeur : • Sylvain Giroux • sylvain.giroux@USherbrooke.ca • 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.
Evaluation • Exercices • Non évalués • Projet individuel • 50 % • Final Durée : 2h50 • 50 %
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 88-58 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 Object-Oriented 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 • http://java.sun.com • IDEs : Eclipse • http://www.eclipse.org/ • Tests : JUnit • http://www.junit.org/index.htm