- Pour apprendre, il faut avoir besoin ou envie de développer une compétence, dans le cadre d’un projet informatique ou professionnel.
- Certains apprentissages comportent des prérequis.
- L’apprentissage débute souvent par un tutoriel : c’est une démarche
qui intègre théorie et pratique, mais pour comprendre les mécanismes, il faut :
- effectuer les manipulations proposées (lire est insuffisant) ;
- comprendre les mécanismes (c’est-à-dire généraliser savoir et savoir-faire) :
- analyser les exempes et consulter la documentation de référence (API par exemple) ;
- faire des hypothèses et les vérifier en expérimentant des variations par rapport à ce que propose le tutoriel.
- En approche complémentaire, il faut étudier les différents châpitres de la documentation de référence.
- Enfin, consolider son apprentissage en rédigeant une carte mentale ou un mémento en généralisant les exemples.
*Les “Intelligences” artificielles génératives peuvent être mobilisées, notamment pour demander des explications sur des portions de code. Attention à vérifier les réponses (cf documentation de référence) car elles peuvent être fausses ou dépréciées.*
Haxe et OpenFL
Mon projet est de créer un jeu vidéo. Je veux pour cela apprendre le langage Haxe et la bibliothèque OpenFL.
Haxe est un langage de programmation, et OpenFL une bibliothèque pour développer des jeux. Il faut d’abord étudier le langage.
- Hello World et Tutoriels vidéos ;
- Manuel de référence et API de la bibliothèque standard ;
- Faire un mémento :
- structures de contrôle : alternative, conditionnelle, fonctions ;
- structures de données : classes et objets, chaînes de caractères, tableaux ;
- affichage et saisie ;
- compilation et exécution.
- Réaliser un mini projet de Jeu en mode console.
Dans un second temps, étudier OpenFL - cf onglet learn.
Extrait de mémento Haxe
Exemple de généralisation.
Structure d’un programme
class NomClasse { //Dans le fichier NomClasse.hx
public static function main() { //point d'entrée du programme
…
}
}
Pour exécuter un programme : haxe --interp --main NomClasse
Alternative
if (condition) {
…
} else {
…
}