Bachelor degree in computer science

Overall presentation of computer science bachelor degree

slides

Requirements to enter second year :

  • Notions in programming (preferably object-oriented programming)
  • Basic knowledge in computer architecture and operating systems
  • Notions in algebra, calculus and discrete structures

Available courses :

  • Computer science : understanding the mathematical, scientific and engineering principles underlying every kind of computing systems
  • Mathematics and computer science : balanced course emphasizing the theoretical aspects of both sciences
  • Computer Science Technology applicable to the Management of Businesses : link

Second year of computer science course

  • Object-oriented programming and initiation to software engineering
  • Imperative programming and systems
  • Computer Architecture
  • Relational databases (relational algebra, SQL, design, …)
  • Initiation to the design of web applications
  • Finite automata and formal languages
  • Data structures and algorithms
  • Discrete probabilities

Third year of computer science course

  • Object-oriented design (design patterns and SOLID principles)
  • Design of algorithms
  • Operating systems and computer networks
  • Compiler : theory and practice
  • Logic (propositional and predicate logic)
  • Computability (Turing machine and fundamental theorems)
  • Advanced relational databases (complex queries, transactions, concurrency, …)
  • Research options : machine learning, quantum computer science, model checking, 3D modeling, signal and image processing, intelligent systems, distributed computing, natural language processing, modeling into algorithmic problems
  • Engineering options : android development, advanced web applications
  • Project or internship of one month

Second year of mathematics and computer science course

  • Object-oriented programming
  • Data structures and algorithms
  • Computer architecture and operating systems
  • Finite automata and formal languages
  • Linear algebra
  • Analysis (series, differentiation and integration of real functions)
  • Probabilities and statistics

Third year of mathematics and computer science course

  • Initiation to relational databases
  • Compiler : theory and practice
  • Design of algorithms and graph theory
  • Computability and semantic
  • Abstract algebra or advanced probabilities and statistics
  • Mathematical modeling
  • Topology and differential calculus
  • Project in computer science and mathematics
  • Research options of the computer science course
  • Option focusing in applied mathematics, fundamental mathematics or computer science