Teaching

Introduction to Computer Science (I1100)

This course gives a general overview of computer science domain by introducing different sub-domains (architecture, operating system, networks, programming languages, ...)

Algorithmics, Programming (I1101)

The objective of this module is to introduce students to the basics of imperative programming which is one of the most effective paradigms of modern programming.

Data Structures (I2206 - INFO 205)

Students learn to develop applications where complete implementation requires high skills in structured programming domain. The main objectives are to specify, conceive and develop modules implementing the fundamental data structures and to choose the most appropriate data structure to represent data in a given problem and to allow its resolution by applying efficient and optimal operations.

Distributed Applications Programming (INFO 408)

Students learn to develop distributed applications by communicating different machines.

Advanced Algorithms (I3341)

This course explores advances in algorithm design, algorithm analysis and data structures. The primary focus is on advanced data structures. Topics include advanced trees structures, disjoint sets, heaps, algorithm design techniques, data structures for strings and linear programming algorithms. Finally, we discuss NP-completeness.

Server-side Web Development (I3302)

The course provides the student with a thorough introduction to server side web development. It introduces the concepts and technologies used to develop dynamic web applications, including common frameworks and application servers for web development.

Graphical Interface and Application (I3305)

The course provides the student with a thorough study of graphical user interfaces and introduction to software design and development.

Bases de données avancées (INFO 409)

Les étudiants acquièrent une expérience solide avec les principes avancées des bases de données: optimisation, traitement des requêtes indexation, transaction, concurrence, pannes, récupération, bases de données distribuées, fragmentation et réplication, bases de données orientées objets, ...