Conception d'applications réactives
- Code de l'UE INFOM451
-
Horaire
30 15Quadri 1
- Crédits ECTS 5
- Langue
- Professeur
Les objectifs du cours est d'étudier les paradigmes de programmation sous-jacents à la réalisation d'applications mobiles, réactives et contextuelles.
Outre l'aspect novateur d'utiliser le cadre du logiciel libre pour concevoir un système d'exploitation pour appareils mobiles dans un domaine jusque là hautement propriétaire, le projet Android a eu, dès son lancement en 2003, le mérite de vouloir fournir à l'utilisateur une expérience riche de ses préférences et de son environnement. Ceci s'est popularisé, depuis lors, au travers du développement de nombreuses "app" tant sur Android que sur d'autresplateformes telles que iOS ou Windows Mobile. L'informatique ambiante a pour ambition d'accentuer encore ce phénomène en permettant à l'utilisateur de bénéficier de services intelligents fournis par des objets communicants.
Au niveau de la programmation, cette évolution nécessite la prise en compte de nouveaux paradigmes. Le cours se propose d'aborder les principaux au travers de deux parties, consacrées, d'une part, à la programmation réactive et, d'autre part, à la programmation contextuelle.
La seconde partie, consacrée à la programmation contextuelle, sera organisée selon trois axes complémentaires. Dans le premier, on étudiera tout d'abord deux modèles principaux de coopération: le modèle des acteurs et le modèle de coordination basé sur des espaces partagés. Des incarnations dans le langage Scala seront ensuite examinées. Enfin, un lien sera fait avec la programmation déclarative d'une application web mobile mise en évidence par le framework React Native.
Le cours est basé sur une série d'exposés théoriques complétée par des séances d'exercices et des projets à réaliser par les étudiants.
L'étudiant est évalué sur base de travaux à remettre ainsi que d'un examen en fin de semestre.
Formation | Programme d’études | Bloc | Crédits | Obligatoire |
---|---|---|---|---|
Master 120 en sciences informatiques, à finalité spécialisée en data science | Standard | 0 | 5 | |
Master 60 en sciences informatiques | Standard | 0 | 5 | |
Master 120 en sciences informatiques, à finalité spécialisée en software engineering | Standard | 0 | 5 | |
Master 60 en sciences informatiques | Standard | 1 | 5 | |
Master 120 en sciences informatiques, à finalité spécialisée en data science | Standard | 2 | 5 | |
Master 120 en sciences informatiques, à finalité spécialisée en software engineering | Standard | 2 | 5 |