Bases des TIC
Cours signalées avec « Bases des TIC »
Dans ce cours sont posées les bases de la programmation en utilisant un style dit impératif. Des exercices et des projets permettront de maîtriser les principes fondamentaux de la programmation et du code tout en développant également la capacité à penser et à résoudre les problèmes comme un·e programmeu·r·se.
- Enseignant: Pierre-André Mudry
À partir des bases acquises dans le cours 101.1 Programmation impérative, de nouvelles compétences en programmation orientée-objets sont développées. Grâce à cela, il deviendra possible de construire de nouvelles abstractions encapsulant données et méthodes. Notamment nous développerons les 4 concepts clé suivants :
- Abstraction
- Encapsulation
- Héritage
- Polymorphisme
De plus, des structures de données plus complexes (List
, Set
, Map
) seront également introduites tout comme des notions de typages plus avancées, notamment à l’aide de la généricité. La mise en pratique sera efectuée par le biais de laboratoires appliqués ainsi que sur un projet plus conséquent de jeu vidéo réalisé en groupe.
- Enseignant: Steve Devènes
- Enseignant: Pierre-André Mudry
En partant des bases acquises dans le cours 102.1 – Systèmes numériques, ce cours aborde les connaissances de base du fonctionnement et de l’organisation d’un processeur, notamment dans ses aspects de fonctionnement logique, structurels ainsi que du point de vue de la performance.
Ces nouvelles compétences seront mises à l’épreuve au sein de groupes de travail en laboratoire et dans le cadre d’un projet semestriel.
- Enseignant: Silvan Zahno
Les objectifs de ce cours sont d’expliquer et appliquer les principes de la cryptographie et de la sécurité des réseaux par l’acquisition de compétences dans la cryptographie pratique et théorique.
- Enseignant: Xavier Barmaz
- Enseignant: Louis Lettry
- Enseignant: Louis Lettry
- Enseignant: Émilie Neveu
Ce cours enseigne les bases du développement logiciel à l'aide des outils de l'ingénierie logicielle : concevoir des logiciels, écrire du bon code, et livrer du logiciel. Le cours met en avant les techniques permettant d'obtenir un haut niveau de qualité de code, d'avoir un code robuste, modulable, gérable, sécurisé et évolutif.
- Enseignant: Davide Calvaresi
- Enseignant: Michael Schumacher
Les systèmes d'exploitation sont une partie essentielle de tout système informatique car ils permettent d’abstraire le matériel et simplifier l’usage des ressources computationnelles (mémoire et CPU) à des programmes fonctionnant en parallèle. Les systèmes d’exploitation permettent ainsi d’exécuter des programmes, offrent des primitives pour la gestion de l’allocation du ou des processeurs, de la mémoire et des périphériques pour le stockage et la communication.
Ce cours présente des concepts des systèmes d'exploitation avec une approche pratique. Les sujets abordés comprennent l'organisation des systèmes d'exploitation, la programmation système, la gestion de la mémoire vive et les systèmes de stockage.
Le cours présente également les principaux concepts de la programmation concurrente (thread, exclusion mutuelle, communication et synchronisation) et les outils et librairies de haut niveau (frameworks d’exécution de threads, divers objets de verrouillage, synchroniseurs, etc.) pour gérer les problèmes qui surgissent avec la programmation concurrente (tel que ceux de liveness).
- Enseignant: Pamela Delgado
- Enseignant: Michael Schumacher
En partant des bases acquises dans le cours 102.1 – Systèmes numériques, ce cours aborde les connaissances de base du fonctionnement et de l’organisation d’un processeur, notamment dans ses aspects de fonctionnement logique, structurels ainsi que du point de vue de la performance.
Ces nouvelles compétences seront mises à l’épreuve au sein de groupes de travail en laboratoire et dans le cadre d’un projet semestriel.
- Enseignant: Silvan Zahno
Les objectifs de ce cours sont d’expliquer et appliquer les principes de la cryptographie et de la sécurité des réseaux par l’acquisition de compétences dans la cryptographie pratique et théorique.
- Enseignant: Xavier Barmaz
- Enseignant: Louis Lettry
À partir des bases acquises dans le cours 101.1 Programmation impérative, de nouvelles compétences en programmation orientée-objets sont développées. Grâce à cela, il deviendra possible de construire de nouvelles abstractions encapsulant données et méthodes. Notamment nous développerons les 4 concepts clé suivants :
- Abstraction
- Encapsulation
- Héritage
- Polymorphisme
De plus, des structures de données plus complexes (List
, Set
, Map
) seront également introduites tout comme des notions de typages plus avancées, notamment à l’aide de la généricité. La mise en pratique sera efectuée par le biais de laboratoires appliqués ainsi que sur un projet plus conséquent de jeu vidéo réalisé en groupe.
- Enseignant: Pierre-André Mudry
Dans ce cours sont posées les bases de la programmation en utilisant un style dit impératif. Des exercices et des projets permettront de maîtriser les principes fondamentaux de la programmation et du code tout en développant également la capacité à penser et à résoudre les problèmes comme un·e programmeu·r·se.