Description
acquérir des éléments de logique en particulier le mode de raisonnement par déduction ;
maîtriser les notions de relations et d’ordre total et partiel, indispensables pour les questions de structuration de données ;
se réapproprier les notions de base du calcul matriciel et de l’analyse utiles pour la résolution de systèmes linéaires et le traitement du signal ;
acquérir des notions d’arithmétique utiles en informatique, notamment pour la cryptographie ;
comprendre le formalisme des systèmes de transitions pour la description et le contrôle de l’évolution des systèmes informatiques ;
enfin aborder la modélisation de phénomènes aléatoires nécessaire à prendre en compte dans divers contextes comme les réseaux informatiques.
Contenu sans obligation d'exhaustivité: Paradigme objet, généricité, héritage et polymorphisme, introspection ; paradigme fonctionnel, lambda expressions, clôtures, objets persistants, promesses ; paradigme logique. Divers langages de programmation pourront être abordés, par exemple Java ou C# pour le paradigme objet, Javascript, Scala, Haskell ou Kotlin pour la programmation fonctionnelle, Prolog pour la programmation logique. Au mois 50% du programme (et de l'examen) concernent un autre paradigme que la programmation objet (dominant aujourd'hui).
Structure: L’enseignement comprendra un noyau de cours magistraux, mais surtout un volume important de TP sur machine. En particulier, on partira d’un ou plusieurs objectifs de programmation et leur déclinaison dans divers paradigmes.
Objectifs
Caractériser les techniques de gestion de l’aléatoire (probabilités et statistique) et leurs rôles dans le traitement de certaines données.
Choisir, sur des critères objectifs, les structures de données et construire les algorithmes les mieux adaptés à un problème donné.
Analyser le fonctionnement d'un système d'exploitation multiprogrammé et les mécanismes fondamentaux des systèmes d'exploitation.
Posséder les étapes importantes de la chaine de production de programmes.
Exploiter des éléments de logique en particulier le mode de raisonnement par déduction.
Maîtriser les notions de relations et d’ordre total et partiel, indispensables pour les questions de structuration de données.
Utiliser les notions de base du calcul matriciel et de l’analyse utiles pour la résolution de systèmes linéaires et le traitement du signal.
Utiliser des notions d’arithmétique utiles en informatique, notamment pour la cryptographie.
Comprendre le formalisme des systèmes de transitions pour la description et le contrôle de l’évolution des systèmes informatiques.
Aborder la modélisation de phénomènes aléatoires nécessaire à prendre en compte dans divers contextes comme les réseaux informatiques.
Evaluer les principales contraintes réseaux et leur impact sur une application de type client/serveur.
Participer à la définition des principaux éléments d'un cahier des charges fonctionnel à destination d'une maîtrise d'ouvrage dont l'objectif est d'urbaniser une application ou un système d’information distribués.
Evaluer fonctionnellement une livraison d'équipements réseaux, et mettre en place une procédure de recette de ceux-ci dans un cadre applicatif.
Mettre en oeuvre protocoles et normes télécoms, Protocoles de l'Internet, Technologies clefs des réseaux de données, Règles de sécurité Informatique et Télécoms, CyberSécurité, Architectures réseau, Réseaux de données et télécoms.
Résultats
Mise en situation professionnelle, travail écrit