1 / 18

IFT 232 Méthodes de Conception Orientées Objets

IFT 232 Méthodes de Conception Orientées Objets. Introduction. Plan : programmer  concevoir. Qu’est-ce qu’un langage de programmation ? L angage de programmation En tant que filtre pour conce voir le monde En tant que culture La programmation par objets ( POO )

Télécharger la présentation

IFT 232 Méthodes de Conception Orientées Objets

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IFT 232 Méthodes de Conception Orientées Objets Introduction

  2. Plan : programmer  concevoir • Qu’est-ce qu’un langage de programmation ? • Langage de programmation • En tant que filtrepourconcevoir le monde • En tant que culture • La programmation par objets(POO) • Un survol du territoire • Vers l’apprentissage de la culture Java

  3. Etude des langages de programmation • Etape 1: Identification et classification des éléments de base des langages de programmation • Etape 2: Regroupement de ces éléments en familles de langages • Approche horizontale: • Regrouper les langages similaires en termes de syntaxe et sémantique • la programmation par objets: Smalltalk, Java, C++, Eiffel… • La programmation procédurale: C, Pascal, Modula… • Etape 3: Langage de programmation ==> une culture • Approche verticale • La syntaxe et la sémantique ne font pas un langage de programmation • Pour réellement comprendre un langage de programmation, il faut comprendre et intégrer sa culture

  4. http://www.charlatans.info/esquineige.shtml

  5. Éléments de base d’un langage de programmation • Variable • Type: typé | non typé, types primitifs, inférence de types, • Valeur: pointeurs, calculée par une fonction, ramasse-miettes, • Portée: lexicale, dynamique, locale, globale • Structure de contrôle • Conditionnelles, boucles, primitives • Exceptions • Invocation / activation des calculs • Appel de procédures, appel de fonctions, démons • Transmission de messages, passage de paramètres • Choix de la “fonction” activée • Pattern matching, polymorphisme, héritage

  6. Éléments de base d’un langage de programmation • Statut de certains éléments • Fonctions, classes  réflexivité • Modifications en cours d’exécution de certains éléments • Parallélisme • Synchrone, asynchrone, fil d’exécution (thread)… • Calculs • Compilation, interprétation, machine virtuelle • Pile d’exécution, tas (“heap”) • Évaluation paresseuse,backtracking

  7. Familles de langages de programmation • Programmation par objets • Programmation procédurale • Programmation fonctionnelle • Programmation par contraintes • Programmation logique • Programmation par règles • etc.

  8. Langage de programmation • Langage • Filtre sur le monde • S’insère dans une culture

  9. Langage de programmation

  10. La programmation par objets • Cinq éléments de base • Instance • Classe • Héritage • Méthode • Transmission de messages

  11. La culture “orientée objets” • Modélisation • Unified Modelling Language (UML) • Le langage • La syntaxe et la sémantique du langage, e.g. Java, Smalltalk… • Les conventions • Programmation • Nomenclature • Les composants JavaBeans reposent sur ces conventions • La pratique de programmation • Refactorisation • Schémas de conception • Méthodologie de développement de systèmes • Programmation agile

  12. To be a ``most important'' innovation, an innovation has to be an idea that is very widely used and is critically important where it applies. • To be a "software" innovation, it has to be a technological innovation that impacts how computers are programmed (e.g., an approach to programming or an innovative way to use a computer). • An innovation is a  new idea. And in this paper, what's meant is a new idea in  software technology. • http://www.dwheeler.com/innovation/innovation.html

  13. Programmation par objets • Objet, acteur, prototype • Classe • Instance • Transmission de message • Méthode • Héritage simple \ multiple, interface, polymorphisme, surcharge (“overloading”)

  14. LANGAGE de programmation

  15. Une culture est aussi un filtre…une certaine façon de concevoir le monde

  16. http://owl.english.purdue.edu/handouts/esl/esltensverb.html

  17. http://www.aidenet.eu/conjugaison07b.htm

More Related