Computer Science Guide
Ce que couvre un premier semestre d'Informatik, au-delà du simple apprentissage du code.
En Allemagne, l'informatique est généralement une filière à part entière, distincte des facultés d'ingénierie classiques, et son premier semestre s'appuie davantage sur une pensée abstraite et structurée que sur l'écriture de code en elle-même. Les étudiants qui pensent qu'il s'agit simplement de « plus de programmation » sont souvent surpris de voir à quel point une grande partie se rapproche des mathématiques appliquées.
Ce que couvre un premier semestre
En plus d'un cours d'introduction à la programmation, la plupart des cursus d'Informatik commencent par des mathématiques discrètes (logique, ensembles, démonstrations) et une introduction aux algorithmes et structures de données. Le cours de programmation vous apprend à écrire du code ; les deux autres vous apprennent à raisonner sur la validité et l'efficacité de ce code, une compétence entièrement différente.
Les notions clés à connaître avant d'arriver
- Logique de base et techniques de démonstration : preuve directe, preuve par l'absurde et récurrence, qui reviennent constamment dès que les algorithmes se complexifient.
- Ensembles, relations et fonctions : le vocabulaire mathématique que presque tous les cours suivants supposent déjà acquis.
- Structures de données fondamentales : tableaux, listes, piles et files, et les compromis entre elles pour stocker et récupérer l'information.
- La pensée algorithmique : décomposer un problème en étapes précises et non ambiguës, avant même de se soucier de la façon de les coder.
Pourquoi cela semble différent d'« apprendre simplement à coder »
Écrire un programme qui fonctionne est une compétence ; prouver qu'il est correct, et expliquer pourquoi une approche est plus rapide qu'une autre, en est une autre, que la plupart des programmeurs autodidactes n'ont jamais eu à développer. Les cursus d'Informatik allemands évaluent les deux dès le premier semestre, ce qui explique pourquoi même de bons programmeurs amateurs peuvent avoir plus de mal que prévu au début, non pas parce qu'ils ne savent pas coder, mais parce qu'ils n'ont jamais eu à raisonner formellement sur du code.
Une méthode de préparation concrète
Entraînez-vous à rédiger de courtes démonstrations formelles, même simples, et travaillez des exercices de base sur les ensembles et la logique, en complément de la pratique de programmation que vous avez déjà. L'objectif est de vous habituer à un raisonnement précis, étape par étape, car cette habitude compte davantage au premier semestre que de connaître un langage de programmation supplémentaire.
GSA Engineering Prep™ couvre, module par module, les bases de mathématiques et de programmation évoquées dans ce guide, que votre parcours mène vers l'Informatik ou vers un cursus d'ingénierie plus classique.