Le Parcours École 42
Une expérience d'apprentissage révolutionnaire en peer-to-peer sans professeurs, sans frais de scolarité, avec un programme basé sur des projets qui transforme les débutants en ingénieurs logiciels qualifiés.
Apprentissage par les Pairs
Les étudiants s'enseignent et s'évaluent mutuellement
Basé sur des Projets
Apprendre en faisant, pas en écoutant
Arbre de Compétences
Les projets débloquent de nouveaux défis
Ma Philosophie d'Apprentissage
Ces notes sont conçues pour enrichir votre parcours d'apprentissage, et non pour le court-circuiter. Plutôt que de fournir des solutions directes, elles offrent des points de repère qui vous guident vers la compréhension tout en vous permettant d'expérimenter la joie de la découverte.
L'accent est mis sur la construction d'un modèle mental solide des concepts fondamentaux de chaque projet. Lorsque vous comprenez le pourquoi, le comment devient beaucoup plus clair. Vous apprendrez à décomposer des problèmes complexes en éléments gérables et à développer une approche systématique pour relever les défis.
En suivant ces guides, vous éviterez les pièges courants et concentrerez votre énergie sur les aspects les plus importants de chaque projet. Cette approche vous aide à apprendre efficacement sans compromettre la profondeur de compréhension—car le véritable apprentissage vient de la réflexion personnelle sur les problèmes, et non de la copie de solutions.
Ma Feuille de Route des Projets
Cette feuille de route reflète mon parcours personnel à travers le programme de l'École 42, montrant ma progression et mon rythme. Bien que ce soient les projets les plus couramment réalisés, votre parcours peut varier. Je mets à jour ces notes régulièrement, souvent avant ou pendant que je soumets chaque projet :
Ceci est un document évolutif qui s'enrichit avec ma progression. Les projets sont présentés dans l'ordre où je les ai complétés, avec les scores montrant mes résultats. Utilisez-le comme source d'inspiration plutôt que comme un guide strict, car le programme permet une certaine flexibilité dans l'ordre des projets.
Libft Notes Disponibles
Créez votre propre bibliothèque C avec des fonctions essentielles qui seront utilisées tout au long de votre parcours à l'École 42.
ft_printf Notes Disponibles
Recréez la fonction printf de la bibliothèque standard C, en gérant divers spécificateurs de format et conversions.
get_next_line Notes Disponibles
Écrivez une fonction qui lit une ligne à partir d'un descripteur de fichier, en apprenant sur les variables statiques et les opérations de fichiers.
Born2beroot Notes Disponibles
Configurez une machine virtuelle avec des politiques de sécurité strictes et les meilleures pratiques d'administration système.
push_swap Notes Disponibles
Triez des données sur une pile avec un ensemble limité d'instructions, en utilisant le nombre d'actions le plus bas possible.
so_long Notes Disponibles
Créez un jeu 2D simple en utilisant la bibliothèque graphique MiniLibX, en implémentant des mécaniques de jeu et l'analyse de carte.
minitalk Notes Disponibles
Créez un petit programme d'échange de données utilisant les signaux UNIX, en apprenant la communication entre processus.
NetPractice Notes Disponibles
Apprenez les réseaux en résolvant des exercices pratiques liés à l'adressage IP, au sous-réseautage et au routage.
Philosophers Notes Disponibles
Résolvez le problème des philosophes dînant en utilisant des threads et des mutex pour apprendre la programmation concurrente.
minishell Notes Disponibles
Créez un shell simple capable d'analyser et d'exécuter des commandes, de gérer des variables d'environnement et d'implémenter des redirections.
cub3d Notes Disponibles
Créez un jeu 3D utilisant des techniques de raycasting, similaire au jeu classique Wolfenstein 3D.
Modules C++ Notes Disponibles
Une série de modules pour apprendre la programmation C++, de la syntaxe de base aux concepts avancés de la programmation orientée objet.
Progression des Projets
Après avoir terminé les projets initiaux, les étudiants progressent vers des sujets plus avancés :
- Minitalk - Signaux UNIX pour l'échange de données
- Minishell - Création d'un shell simple
- Philosophers - Multithreading et synchronisation
- Cub3D/MiniRT - Graphiques 3D avec raycasting
- ft_containers - Implémentations de conteneurs C++
- Inception - Docker et administration système
- ft_transcendence - Développement web full-stack
Notes des Projets École 42
Des notes détaillées pour les projets de l'École 42 sont maintenant disponibles pour tous les projets principaux ! Elles incluent des explications conceptuelles, des modèles mentaux et des cadres de réflexion pour guider votre parcours d'apprentissage.
Consultez les notes pour Libft, ft_printf, get_next_line, Born2beroot, push_swap, so_long, minitalk, NetPractice, Philosophers, minishell, cub3d, et Modules C++ !
Suivez-moi sur X (Twitter) pour être informé des nouvelles publications !