Skip to main content

Bachelor's degree Computer science

Macaron diplôme national de Licence contrôlé par l'Etat
Bac+1
Bac+2
Bac+3
Bac+4
Bac+5
L1
L2
L3
Field(s)
Sciences and engineering
Degree
Bachelor's degree  
Mention
Computer Science  
Program
Computer science  
How to apply
Apprenticeship, Initial training  
Course venue
Campus Marne la Vallée - Champs sur Marne, Bâtiment Copernic
Capacities
Licence 2 : 120 Licence 3 : 96  
Training from

Entry requirements

Admission to L2 is possible after a year of L1 in science, preferably in mathematics and/or computer science.

Admission to L3 is possible on the basis of application after a high school diploma and two years of higher education or equivalent.

External candidates for L2 are expected to master the vast majority of the concepts and skills covered in L1 (and L2 for L3 candidates).

Benefits of the program

The course covers both theoretical and practical foundations of computer science. The first three semesters also include a strong mathematics curriculum.

The fact that the programme covers both disciplines from the very first year sets it apart from other degrees offered by University Technology Institutes (IUTs), preparatory schools and “general” science Licence degrees.

It is the only course in the eastern Paris area to offer such in-depth coverage of computer science and mathematics from the first year on.

Acquired skills

After completing the course, students are expected to be able to:

- choose appropriate data structures in a given setting, design an algorithm and develop an entire piece of software;

- have some knowledge about all stages of programme compilation;

- design a database and website;

- describe and use computer systems and networks;

- conduct mathematical reasoning, analyse, model and resolve a simple problem;

- work in a team, contribute to a project, present their work and undertake a literature review in French and English.

International

There is no specific international agreement for this Licence. However, in collaboration with the university’s international relations department, we help students who wish to study abroad for a semester, either through the Erasmus programme or via specific mobility funding.

Capacities

Licence 2 : 120

Licence 3 : 96

Course venue

Campus Marne la Vallée - Champs sur Marne, Bâtiment Copernic

Your future career

Over 80% of graduating students pursue further studies (source: OFIPE), mainly in various fields of computer science (software, networks, image, fundamental computer science, etc.), with the Master’s in Computer Science at UGE or other programmes at other universities.

However, the level of expertise acquired is sufficient to work in the industry straight away (as an IT technician or junior developer for example), even if few students choose this option.

After the L2, students can also apply to study computer science at UGE’s engineering school, ESIPE.

Professional integration

The Licence in Computer Science at Université Gustave Eiffel is not aimed at producing graduates to work in the industry straight away, as the vast majority choose to pursue further studies. However, there are options specifically aimed at solidly preparing students to work in the industry after graduating (such as internships) and/or the choice of a third year in a work-study programme.

Study objectives

The course covers both theoretical and practical foundations of computer science. The first three semesters also include a strong mathematics curriculum. The fact that the programme covers both disciplines from the very first year sets it apart from other degrees offered by University Technology Institutes (IUTs), preparatory schools and “general” science Licence degrees. It is the only course in the eastern Paris area to offer such in-depth coverage of computer science and mathematics from the first year onwards.

Major thematics of study

The computer science programme has 180 ECTS in total (30 per semester), divided into the following main areas:

 

Algorithms and programming (54 ECTS): imperative (Python, C), object-oriented (Java) and functional (Caml) programming, list, tree and graph algorithms.

 

Mathematics (36 ECTS): mathematical methodology, differential and integral calculus, sequences and series, probability, linear algebra.

 

Computer technologies (33 ECTS): computer systems and networks (organisation, architecture and programming), databases, web programming.

 

Theoretical computer science (24 ECTS): discrete mathematics, computational models, automata and languages, parsing, compilation.

 

Complementary subjects (9 ECTS): English, computer literacy.

Calendar

Optional work placement in L3:

at least two months, outside class periods.

 

Work-study programme in L3:

two days per week at a company.

Options

In the first and third year of the programme, there is also a total of 24 ECTS of optional units. In L1, they concern mostly non-disciplinary fields: other scientific disciplines, foreign languages, communication, creative writing workshop, etc.

 

In L3, optional subjects represent a deepening or introduction to specific computer science topics such as images, web, machine learning, mathematics for computer science, etc. The specific list of topics will vary from year to year, according to the availability of teaching staff. L3 also offers the possibility for individual supervised projects and internships in companies. Lastly, specific subjects are offered to students in the work-study programme.

Semester 1

CoursesECTSCMTDTP
Algoritmique et structures de données

3 12h 18h
Algèbre linéaire 2

Déterminants, réduction des endomorphismes, espace euclidien.

6 24h 36h
Base de donnéees

Utiliser un système de gestion de  base de données (SGBD) par une interface d'administration en ligne.  Connaître les concepts fondamentaux liés aux bases de données  relationnelles (Méthodologies, Modèle Entité-Association, Modèle  relationnel). Utiliser le langage d'interrogation SQL. Concevoir et  développer un site web dynamique avec accès à une base de données en  environnement 3 tiers, en utilisant une solution côté-serveur, basée sur  les langages HTML et PHP, le serveur Apache et le SGBD MySql. Renforcer  les notions élémentaires de programmation (variable, fonction,  tableaux, structures conditionnelles, boucles, etc) au travers du  langage PHP

6 24h 12h 24h
PIX

1 2h 2h
Initiation à la programmation en C

6 24h 24h 24h
Labo Math Info

5 2h 36h
Initiation à la programmation en C

6 24h 24h 24h
Suite séries intégrales

6 24h 36h
Anglais (pas de LV2)

L’enseignement de l’anglais au cours de la licence vise une amélioration des compétences écrites et orales afin que les étudiants deviennent plus d’autonome. Le but est de pouvoir comprendre et communiquer lors de futurs échanges professionnels, ainsi que de pouvoir comprendre les articles scientifiques qu’ils pourront rencontrer lors de leurs études et/ ou vies professionnelles. Tout au cours de la licence, les cours d’anglais s’attachent à apporter une ouverture sur les différentes cultures afin de favoriser les échanges entre pays. Des groupes de niveau sont mis en place lors du premier semestre afin de permettre à tous d’aborder les cours d’anglais dans les meilleures conditions.

3 15h
Anglais LV1

L’enseignement de l’anglais au cours de la licence vise une amélioration des compétences écrites et orales afin que les étudiants deviennent plus d’autonome. Le but est de pouvoir comprendre et communiquer lors de futurs échanges professionnels, ainsi que de pouvoir comprendre les articles scientifiques qu’ils pourront rencontrer lors de leurs études et/ ou vies professionnelles. Tout au cours de la licence, les cours d’anglais s’attachent à apporter une ouverture sur les différentes cultures afin de favoriser les échanges entre pays. Des groupes de niveau sont mis en place lors du premier semestre afin de permettre à tous d’aborder les cours d’anglais dans les meilleures conditions.

2 15h
Langue vivante 2

1 24h

Semester 2

CoursesECTSCMTDTP
Algorithmique des arbres

Ce cours est centré sur les  arbres et leurs applications. On présente :  les méthodes de hachage;  les arbres, les arbres binaires;  les différentes représentations des arbres;  les méthodes de parcours et leurs applications : ordre préfixe, ordre  postfixe, ordre infixe;  les applications des arbres :  arbres binaires de recherche, codages de Huffman, tas et files de  priorité;  le rapport entre arbres binaires et complexité logarithmique;  l'application aux algorithmes de tri : tri rapide, tri par tas, tri par  fusion, bornes sur la complexité. Les notions introduites doivent être connues d'un point de vue théorique  mais aussi pratique par le biais d'exercices de programmation

6 18h 18h 24h
Architecture des systèmes informatiques

Comprendre le rôle du système d'exploitation et savoir l'utiliser. Maîtriser certains des concepts fondamentaux du système: entrées-sorties, systèmes de fichiers et gestion de la mémoire.  Comprendre la différence entre bibliothèques et appels systèmes

5 24h 24h
Mathématiques pour l'informatique

5 24h 24h
Perfectionnelent à la programmation en C

l'objectif est d'approfondir certains aspects du langage C et d'aborder des techniques de programmation impératives avancées. Une première partie portera sur la révision en détail de la notion d'instruction, des structures de contrôle, de la bonne utilisation des entrées/sorties, de l'évaluation des expressions et de la définition des types. Une deuxième partie orthogonale à la première portera plus spécifiquement sur la programmation modulaire, une première approche de la programmation générique et le détail des étapes de compilation. Le but est d'avoir les outils et les connaissances nécessaires pour mener à bien un projet du début à la fin. Les travaux pratiques et travaux dirigés consisterons à analyser des projets et à les concevoir en appliquant les méthodes enseignées en cours

6 18h 18h 24h
Automates et langages

Ce cours reprend dans un premier  temps les notions de bases concernant la théorie des langages: alphabet,  mot et langages, ainsi que les opérations usuelles: union,  concaténation et étoile de Kleene. Ensuite, il aborde la notion  d'automate d'état fini et ses différentes variantes: déterministe ou  non, avec ou sans epsilon-transitions, complets ou non. Nous donnons des  algorithmes qui permettent de passer d'une définition à une autre (dont  l'algorithme de déterminisation). Ensuite, nous introduisons la notion  d'expression rationnelle et montrons comment en faire un automate fini  suivant les algorithmes de Thomson et Glushkov ainsi que l'opération  inverse. Le cours se poursuit par l'introduction des notions d'état  accessible et co-accessible et par l'énonciation de l'algorithme de  minimisation des automates finis et du théorème qui prouve l'existence  d'un automate minimal unique. Nous montrons par la suite qu'il est  possible de décider si deux expressions rationnelles caractérisent le  même langage. Enfin, nous terminons par des propriétés de clôture des  langages rationnels et montrant pourquoi l'on peut se passer du  complémentaire et de l'intersection dans les expressions rationnelles et  la raison pour laquelle ces deux opérations n'y sont pas présentes même  pour des raisons de commodité. Le cours se termine par l'énoncé du  théorème de l'étoile et de sa démonstration

5 24h 24h
Anglais (sans LV2)

L’enseignement de l’anglais au cours de la licence vise une amélioration des compétences écrites et orales afin que les étudiants deviennent plus d’autonome. Le but est de pouvoir comprendre et communiquer lors de futurs échanges professionnels, ainsi que de pouvoir comprendre les articles scientifiques qu’ils pourront rencontrer lors de leurs études et/ ou vies professionnelles. Tout au cours de la licence, les cours d’anglais s’attachent à apporter une ouverture sur les différentes cultures afin de favoriser les échanges entre pays. Des groupes de niveau sont mis en place lors du premier semestre afin de permettre à tous d’aborder les cours d’anglais dans les meilleures conditions.

3 15h
Anglais (si LV2)

L’enseignement de l’anglais au cours de la licence vise une amélioration des compétences écrites et orales afin que les étudiants deviennent plus d’autonome. Le but est de pouvoir comprendre et communiquer lors de futurs échanges professionnels, ainsi que de pouvoir comprendre les articles scientifiques qu’ils pourront rencontrer lors de leurs études et/ ou vies professionnelles. Tout au cours de la licence, les cours d’anglais s’attachent à apporter une ouverture sur les différentes cultures afin de favoriser les échanges entre pays. Des groupes de niveau sont mis en place lors du premier semestre afin de permettre à tous d’aborder les cours d’anglais dans les meilleures conditions.

2 15h
Langue vivante 2

1 24h

Semester 3

CoursesECTSCMTDTP
Complements in C programming

Complementary course on imperative programming.

12h
Complements in automata theory

Complementary course on finite automata theory.

12h
Object-oriented programming

This module presents some of the main notions of object-oriented programming in Java: classes and objects, inheritance, polymorphism, visibility and encapsulation, etc.

6 24h 24h
Advanced C programming

The aim of this module is to further explore certain aspects of the C programming langage, in particular : code portability (norms and platform dependence), code structuration (modular programming), code efficiency (memory management, computations) and the limits of the language (side effects, type checking, floating-point arithmetic).

6 24h 24h
Syntactic analysis

This module presents classical parsing techniques (lexical analysis, grammars, main top-down or bottom-up parsing algorithms), up to the construction of an abstract syntax tree (AST). It precedes the Compiling module at semester 6.

6 24h 24h
Computer networks

After a general introduction (OSI model, usage), this course covers four categories of protocols, networks and applications: local networks, Internet, transport protocols and finally the application layer. For each category, the main issues, protocols and associated services are presented.

5 20h 20h
English

L’enseignement de l’anglais au cours de la licence vise une amélioration des compétences écrites et orales afin que les étudiants deviennent plus d’autonome. Le but est de pouvoir comprendre et communiquer lors de futurs échanges professionnels, ainsi que de pouvoir comprendre les articles scientifiques qu’ils pourront rencontrer lors de leurs études et/ ou vies professionnelles. Tout au cours de la licence, les cours d’anglais s’attachent à apporter une ouverture sur les différentes cultures afin de favoriser les échanges entre pays. Des groupes de niveau sont mis en place lors du premier semestre afin de permettre à tous d’aborder les cours d’anglais dans les meilleures conditions.

3 20h
Tutored project

Individual or small-team work supervised by a faculty member, leading to the writing of a report and an oral presentation.

4
Critical thinking

Initiation to the importance of doubt in scientific thinking and methodology, and to the notion of scientific demonstration. The students will be presented with paradoxes, study the scope and influence of rhetorics, search for biases which might hinder objective access to information, and question the reliability of information sources (in particular in the absence of consensus).

4 16h 10h
Combinatorics

This modules presents classical notions of mathematics for computer science, in particular in combinatorics (couting and enumeration, generating series).

4 18h 18h
UE Libre

The module allows students to follow a unit of their choice in another department of the university (with the approval of the head of studies).

4
Communication in the workplace

Oral and written communication. Students will be evaluated on their ability to write a report and perform an oral presentation on the theme of professional work (work organisation and methods, socio-economic context).

4 6h 10h
Introduction à l'image

4 14h 14h

Semester 4

CoursesECTSCMTDTP
Functional programming

Notions of functional programming, higher-order functions, immutable and persistent data structures.

5 16h 20h
Compiling

This module follows the Syntactic analysis module of the previous semester. It introduces assembly-type languages, and explores a few code generation and optimisation techniques.

5 24h 24h
Graph algorithms

This module presents graphs and their representations, and some fundamental graph algorithms: breadth-first and depth-first search, shortest path algorithms, spanning trees, maximal flow algorithms.

6 24h 24h
System programming

Concepts related to systems, kernel, inputs and outputs, APIs, fonctional layer, processes, activities, scheduling, kernel algorithms, reentrant procedures, distributed computations, inter-locking, locks, memory (allocation, garbage collection), virtual memory, cache, pipes, protocols. Writing of programs using system APIs and manipulating the previous concepts.

5 24h 24h
Advanced databases

This unit presents advanced concepts for relational databases such as triggers, concurrency and transactions, storage and indexing issues. It features an introduction to the PL/pgSQL language.

5 16h 20h
Advanced Web programming

This option introduces advanced web technologies such as Angular.

4 14h 14h
Tutored project

Individual or small-team work supervised by a faculty member, leading to the writing of a report and an oral presentation.

4
Advanced computer architecture

In-depth exposition to computer architecture concepts.

4 14h 14h
Free-choice unit

The module allows students to follow a unit of their choice in another department of the university (with the approval of the head of studies)

4
Apprenticeship period

Companion unit to the previous semester's "Communication in the workplace" unit, accompanying the students' work as apprentices in a company. Students will be evaluated on their ability to write a report and perform an oral presentation in front of their academic and professional tutor, detailing their activities over the apprenticeship period.

4
Short internship

Short professional internship (for non-apprentices only).

4
Introduction à l'IA

The topic of this option may vary from year to year. For example, it can focus on the introduction to data science, geomatics, embedded systems, etc.

4 14h 14h

JUGE Vincent (L2-L3)

BONZOM Valentin (L2)

Academic coordinator

DAVID Claire (L3)

Academic coordinator

MARTIN Frédéric (L2)

Academic secretary
Phone number : 01 60 95 72 05
Building : Lavoisier
Office : 012
Partners