1ière Master en sciences de l'ingénieur industriel finalité informatique

Techniques de programmation

< Retour

Crédits ECTS5
Volume horaire (h/an)60
Titulaire(s)KUTY, Ludovic
UnitéObligatoire
PériodeQuad. 1 et 2
CodeTECH-IINF0007/1
Prérequis

Connaissances de base en programmation orientée-objet, idéalement en Java.

Objectifs

A l'issue de la première partie du cours, l'étudiant sera capable de:

  • Utiliser XML et certaines des technologies associées comme DTD, espaces de noms, SAX, DOM, XPath 1.0, XSLT 1.0, W3C XML Schema 1.0.
  • Utiliser le langage Java pour parser et construire des documents XML ainsi que faire des recherches avec XPath.
  • Faire des transformations XSLT en Java.

A l'issue de la seconde partie du cours, l'étudiant sera capable de:

  • De comprendre le cheminement suivi en informatique pour modéliser la notion de problème et le lien avec les compilateurs.
  • D'utiliser les expressions régulières.
  • Comprendre comment fonctionne un compilateur et en particulier la méthode à descente récursive. Il aura une idée des autres techniques existantes.
  • Ecrire un compilateur à descente récursive avec un langage orienté-objet.

 

Contenus
  • XML, DTD, SAX, DOM, JAXP, XPath 1.0, XSLT 1.0, W3C XML Schema.
  • Les machines à états finis (FSMs), les automates à piles, les machines de Turing, les grammaires (régulières et hors-contextes), les expressions régulières.
  • Compilation: analyse lexicale, analyse syntaxique, analyse sémantique.
  • Méthode de la descente récursive en Java.
  • Ecriture d'expressions régulières.
Bibliographie
  • Introduction à la Calculabilité, Pierre Wolper, Dunod, 3ème édition, 2006.
  • Introduction to the Theory of Computation, Michael Sipser, Thomson Course Technology, 2ème édition, 2006.
  • Introduction to Automata Theory, Languages, and Computation, John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Addison-Wesley, 3ème édition, 2006.
  • Compilers: Principles, Techniques, and Tools, Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Addison-Wesley, 2ème édition, 2007.
  • Automata and Computability, Dexter C. Kozen, Springer, 1997.
  • Programming Language Pragmatics, Michael L. Scott, Morgan Kaufmann, 2ème édition, 2002.
  • Compiler Design Theory, P. M. Lewis II, D. J. Rosenkrantz, R. E. Stearns, Addison-Wesley, 1976.
  • Basics of Compiler Design, Torben Mogensen.
  • Mastering Regular Expressions, Jeffrey E. F. Friedl, O'Reilly, 3ème édition, 2006.
Méthodes d'enseignement et d'apprentissageCours magistraux
Travaux de laboratoire
Projets, recherches ou travaux sur le terrain
EvaluationExamens oraux
Notes de coursOui
Langue(s) du coursFrançais

Les informations reprises sur cette page le sont à titre de simples renseignements et ne peuvent en aucune façon engager la responsabilité de la Haute Ecole.