• FR
  • EN

Informatique et technologies de l'information - 1

Sigle: C1321, ECTS: 3

Objectifs du cours

Compte tenu des programmes en amont et de leur formation antérieure, les élèves entrant en première année ont des niveaux de connaissances en informatique très hétérogènes : la plupart -- mais pas tous -- ont néanmoins appris à programmer en Python et connaissent des éléments d'algorithmique (recherche, tris, complexité) ; quelques uns ont davantage de connaissances (structures de données et algorithmes associés, second langage de nature différente comme CAML...)

En conséquence, l'objectif de ce cours est de donner à chacun un niveau de connaissances minimal dans le domaine des technologies de l'information, ainsi qu'une pratique de l'algorithmique et de la programmation que tout ingénieur se doit de maîtriser. Aussi, l'accent est mis sur le principe d'une démarche rigoureuse pour la conception et l'écriture de programmes modulaires, fiables, et bien documentés.

Programme

Algorithmique et programmation en java
Sommaire :
L'enseignement comprend dans un premier temps des présentations générales sur les technologies de l'information, des notions d'architecture des ordinateurs, de systèmes d'exploitation, et d'informatique fondamentale. Par la suite, la partie consacrée à l'algorithmique et à la programmation comprend l'apprentissage du langage Java, et le traitement d'applications mettant en évidence des méthodes de programmation.

Les thèmes principaux

  • Accueil et prise en main : les moyens informatiques de l'École et comment s'en servir efficacement ; charte d'utilisation des moyens informatiques.
  • Fonctionnement d'un ordinateur (matériel, logiciel, communication) ; systèmes d'exploitation.
  • Unix (système de fichiers, répertoires, commandes)
  • Structures de données classiques (listes, piles, files, arbres, tables)
  • Langage Java : caractéristiques, bases du langage, exceptions, entrées-sorties, ...
  • Programmation objet : notions de classe, instance, héritage, polymorphisme, ...
  • Introduction aux notions d'événement, programmation réactive, interface homme-machine, animation
  • Selon les groupes : introduction aux threads et à la programmation réseau, programmation générique, expressions régulières et automates, autres algorithmes.

Modalités d'évaluation

Examen sur table au premier semestre.
Un projet est à réaliser, qui sera évalué au 2e semestre.

Modalités pédagogiques

Déroulement du cours, méthode pédagogique :
Un test est fait dès le début, avec, pour seul but, de réaliser des groupes de niveau. La plus grande partie de l'enseignement se déroule sous la forme de travaux dirigés par groupes, les activités de chaque groupe pouvant être différenciées selon les niveaux. Une part importante du temps est consacrée aux travaux pratiques. Durant les exercices, plusieurs types de problèmes sont abordés, appartenant à des horizons différents, ce qui permet aux élèves de réfléchir à la modélisation, et à la construction de solutions à des problèmes divers.
La note attribuée porte sur 6 coefficients : les trois premiers sont comptabilisés au premier semestre sur la base de l'examen écrit, mais aussi de la participation aux petites classes ; les trois autres, comptabilisés aux deuxième semestre portent sur un projet à réaliser de manière individuelle.  La participation aux petites classes et aux travaux pratiques est obligatoire.

Le langage support pour cet enseignement est le langage JAVA.

Equipe pédagogique

Responsable(s)
Gladys HUBERMAN

Chargé(s) d'enseignement
Laurent DAVERIOOlivier HERMANTPierre JOUVELOT
Norbert KAJLERValérie MOUNOURYAurélien VEILLAS
Jean-Michel VIOVY

Sigle C1321
Année 1ère année
Niveau Undergraduate
Crédits ECTS 3
Coefficient 2
Nb. d'heures 55
Nb. de séances 44
Type de cours Tronc Commun
Semestre 1
Période Automne
Domaines
  • Informatique
Dernière mise à jour:
12 Oct 2016 14:07 par julien