IFT 785 Approches Orientée Objets Plan de cours
Information générale Professeur : – Sylvain Giroux – – D Session : Hiver 2005 Crédits : 3 Horaire : – jeudi 18h45 – 21h45 Consultation : – Mardi 10h h00
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 – Non évalués Projet individuel – 50 % FinalDurée : 2h50 – 50 %
Références Agha, Gul, Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 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, Briot, Jean-Pierre, From Objects to Actors: Study of a Limited Symbiosis in Smalltalk-80, LITP RXF, Université Pierre et Marie Curie, France, sept Cointe, Pierre, Metaclasses are First Class: the ObjVlisp model, OOPSLA '87 Proceedings, 1987, Orlando, Florida, SIGPLAN Notices, vol. 22, no 12, pp Fowler, Martin, UML Distilled: A Brief Guide to the Standard Object Modeling Language, Addison-Wesley, 3rd ed 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; 1989UnitTest Infected: Programmers Love Writing Tests Liskov, Barbara, Program Development in Java, Abstraction, Specification and Object-Oriented Design, Addison-Wesley, Roberts, Don, Ralph Johnson, Evolving Frameworks A Pattern Language for Developing Object- Oriented Frameworks. Sun, Java Tutorial, Sun Microsystems, JavaBeans, v 1.01, (beans101.pdf)beans101.pdf Yonezawa, A., et al., Object-Oriented Concurrent Programming in ABCL/1, OOPSLA 86 Proceedings, SIGPLAN Notices, vol. 21, no 11, pp
Logiciels Editeur UML : Rational Rose for Java Java : JSE ou JSE – IDEs : Eclipse – Tests : JUnit –