Le langage Go | Formation complète
- الوصف
- أقسام الدرس
- رأي
Go est un langage open-source créé par Google. Sa popularité est en explosion, il est maintenant dans le top 20 des langages les plus populaires du classement TIOBE. De plus, Go est encore jeune, c’est le bon moment pour vous y mettre !
Ce cours s’adresse autant aux débutants en programmation qu’à ceux qui ont déjà une expérience dans un autre langage (Java, C#, Python ou Ruby). A la fin du cours, vous serez capable de réaliser des projets Go complets.
Go est un langage à la fois abordable et puissant. Avec lui, vous pourrez aussi bien faire des outils simples (traitement de fichiers, compression zip, etc. ) que des applications web performantes (génération de miniatures, API REST, etc).
Qui utilise Go ?
Go est né en 2009, et en moins de 10 ans a déjà conquis le monde. Grâce à son accent sur la performance et la facilité de développement, on le trouve chez de grands noms comme :
- Google (of course !)
- Netflix
- GitHub
- Uber
- Molotov TV
- LeBonCoin
Structure du cours
Grâce aux quizz et aux exercices, vous serez capable de maîtriser toutes les spécificités de Go. Voici quelques exemples de projets que nous ferons ensemble :
- Un outils de remplacement de mots dans des fichiers ;
- Le jeu du pendu en console incluant des tests unitaires pour vérifier la logique de jeu ;
- Un dictionnaire stockant ses définitions en base de données ;
- Un générateur de certificats de réussite qui produit des PDFs et du HTML.
- Un logiciel de filtre massif d’images, qui converti en noir et blanc ou applique un flou tout en divisant par 4 le temps de traitement grâce aux Goroutines ;
- Un serveur web proposant une API HTTP Rest pour un catalogue de film avec authentification JWT
Pour réaliser ces applications, nous allons aborder tous les aspects importants du langage :
- La syntaxe de base du Go, déclaration des variables, contrôles de flux (if, for, etc.) ;
- Les différences de Go avec d’autres langages (Java, Python, etc.) ;
- L’organisation du code en package ;
- L’utilisation de bibliothèques externes ;
- Les Goroutines et les Channels pour paralléliser vos traitements ;
- Les requêtes HTTP GET / POST avec du contenu JSON ;
- Le routing pour créer un serveur web performant ;
- Les interactions base de données en SQL ;
- La sécurisation d’API avec JWT.
Je compte ajouter encore beaucoup de contenu dans ce cours, attendez-vous à recevoir des mise à jour régulières. Rejoignez moi et maitrisez le Go pour répondre à la demande croissante sur cette technologie !
-
15Déclaration de variablesدرس فيديو
-
16Visibilité des variablesدرس فيديو
-
17Quiz : les variablesاختبار
-
18Contrôle de flux : if / elseدرس فيديو
-
19Contrôle de flux : switchدرس فيديو
-
20Conversion de typeدرس فيديو
-
21Les fonctionsدرس فيديو
-
22Retour de fonction multipleدرس فيديو
-
23Quiz : les fonctionsاختبار
-
24Arrayدرس فيديو
-
25Slicesدرس فيديو
-
26Quiz : Array et Slicesاختبار
-
27Contrôle de flux : boucle forدرس فيديو
-
28Rangeدرس فيديو
-
29Gestion d'erreur en Goدرس فيديو
-
30Gestion d'erreur dans un fichierدرس فيديو
-
31deferدرس فيديو
-
32Quiz - for, err, deferاختبار
-
33Exercice : Goplace - Find / Replace de fichiersدرس فيديو
-
34Corrigé : Goplace - Find / Replace de fichiers 1/3درس فيديو
-
35Corrigé : Goplace - Find / Replace de fichiers 2/3درس فيديو
-
36Corrigé : Goplace - Find / Replace de fichiers 3/3درس فيديو
-
37Sources Projet Goplaceدرس نصي
-
46Structure du jeu du penduدرس فيديو
-
47Définition d'un Gameدرس فيديو
-
48Récupérer la saise utilisateurدرس فيديو
-
49Dessiner l'état de la partieدرس فيديو
-
50Deviner une lettreدرس فيديو
-
51Exercice : se tromper de lettreدرس فيديو
-
52Corrigé : se tromper de lettreدرس فيديو
-
53Charger un dictionnaire de motsدرس فيديو
-
54Tests en Goدرس فيديو
-
55Tester le jeu du penduدرس فيديو
-
56Exercice : tester les états de jeuدرس فيديو
-
57Corrigé : tester les états de jeuدرس فيديو
-
58Aller plus loinدرس فيديو
-
59Sources Projet Hangmanدرس نصي
-
65Structure du projet Dictionnaireدرس فيديو
-
66Ajouter une dépendance externe : Badgerدرس فيديو
-
67Définition des Structsدرس فيديو
-
68Création et fermeture de la BDDدرس فيديو
ATTENTION : La bibliothèque Badget a été mise à jour depuis l'enregistrement de cette vidéo. La récupération des options se dorénavant fait de la manière suivante :
opts := badger.DefaultOptions("./badger")
Merci Thomas S. pour m'avoir remonter l'information !
-
69Ajouter un mot dans le dictionaireدرس فيديو
-
70Lire un mot dans le dictionnaireدرس فيديو
-
71Lister les mots du dictionnaireدرس فيديو
Une erreur s'est glissée dans la fonction sortedKeys(), qui affiche des valeurs fantômes. Voici la version corrigée (désolé pour le formatage, impossible de le changer ici) :
func sortedKeys(entries map[string]Entry) []string {
keys := make([]string, len(entries))
i := 0
for key := range entries {
keys[i] = key
i++
}
sort.Strings(keys)
return keys
}
Merci à Jean-Baptiste D. et Sébastien F. pour leur attention !
-
72Exercice : Supprimer un mot du dictionnaireدرس فيديو
-
73Corrigé : Supprimer un mot du dictionnaireدرس فيديو
-
74Gérer des arguments CLIدرس فيديو
-
75Action de listeدرس فيديو
-
76Action d'ajout d'un motدرس فيديو
-
77Exercice : action de définition et suppressionدرس فيديو
-
78Corrigé : action de définition et suppressionدرس فيديو
-
79Aller plus loinدرس فيديو
-
80Sources Projet Dictionaryدرس نصي
-
81Interêt d'un interfaceدرس فيديو
-
82Définition d'une Interfaceدرس فيديو
-
83Règles d'une interfaceدرس فيديو
-
84Quiz : interfacesاختبار
-
85Comportement en fonction du typeدرس فيديو
-
86Empty interfaceدرس فيديو
-
87Quiz : manipuler les interfacesاختبار
-
88Reader et Writerدرس فيديو
-
89Reader de fichier et de requête HTTPدرس فيديو