Langage Go : les Fondamentaux

Plus de 11h de cours pour apprendre à maîtriser le langage Go par Robin Penea

Vous voulez apprendre le langage Go ? Que vous soyez débutant en programmation ou déjà expérimenté, initiez-vous au langage Go avec ce cours en ligne.
10h54 120 chap
4/5 (4 votes)
165 élèves

Au programme de ce cours en ligne

Go est un langage open-source créé par Google. De plus en plus populaire, le langage Go figure parmi les 20 langages de programmation les plus populaires. Avec l'expert Robin Penea, découvrez dans ce cours sur le langage Go en ligne à réaliser des outils simples (traitement de fichiers, compression zip, etc. ) tout comme développer des applications web performantes (génération de miniatures, API REST, etc).
Accessible à tous (débutant comme avancé)
120 videos
4 annexes
Accès 24/7
Certificat

Robin Penea

Votre expert Pro

Robin travaille en tant qu’ingénieur software depuis plus de 10 ans. En passant de startups à de grandes entreprises (SagemCom, JCDecaux, Parrot), il a abordé un large panel de technologies, des systèmes embarqués au développement web. Il travaille sur Android depuis 2010, que ce soit en modifiant directement l’OS ... En apprendre plus sur Robin Penea
Robin Penea est suivi par 1193 élèves et a reçu la note globale de 4,5/5 sur 7 cours
Robin Penea

Vos avis sur ce cours

4/5
sur 4 notes
Moyen ! Avec le confinement, je me suis amusé à faire une formation sur Go (je ne suis pas un débutant en la matière : développeur depuis plus de 20 ans, utilisateur assidu de Go depuis plus de deux ans) pour voir comment était amené, présenté ce langage. Commençons par les points positifs : - Les cours sont faciles d’accès à tous programmeurs même débutant quel que soit son horizon, - Les cours sont « dynamiques » et didactiques : bon les développeurs ayant quelques kilomètres au compteur risquent de s’ennuyer. - Les projets sont intéressants mais… Les points négatifs : (hélas je dois avouer que plus je progressais dans le cours, plus la colère me montait au nez) - Les projets sont fortement inspirés de Jon Calhoun et ses Gophercises (géniaux et gratuits mais ne s’adressant pas aux grands débutants), - Le cours n’est absolument pas mis à jour et entraîne de bien mauvaises pratiques. L’exemple le plus patent : on ne travaille plus directement dans le GOPATH mais avec des modules (il est à noter que le cours est mis à jour sur Udemy…), - Le jeune formateur (qui m’a bien l’air débutant) a d’autres mauvaises pratiques : je ne pense pas qu’il sache quand utiliser les pointeurs ou les types pour créer des méthodes (les function receivers, puisqu’il ne connaît pas l’autre nom officiel : methods). Pourtant c’est simple : il suffit de suivre Donovan & Kernighan. On utilise un pointeur si on souhaite modifier le type sinon on utilise le type directement. Simple et efficace comme Go ! - Notre formateur n’a pas l’heure de connaître le package log qui éviterait le recours à du code fmt.Println() et os.Exit(). Après vérification sur la version mise à jour Udemy, il en parle (bien il n’a pas réactualisé les vidéos). - Mais là où c’est pénible c’est d’abord son entêtement à utiliser des termes anglo-saxons alors qu’il existe une version bien correcte et française (heureusement qu’il ne parle pas de librairie mais bien de bibliothèque). Mais le pire, c’est son absolu méconnaissance de la programmation concurrente. Non, non et non en Go, la programmation concurrente n’est pas une programmation parallèle. Confondre ces deux univers est la démonstration de l’ignorance du fonctionnement de Go : à la compilation, il y a un entrelacement des opérations qui donne l’illusion de parallélisme. Si Go peut se répartir sur 1 à X cœurs (package runtime de la bibliothèque standard), la concurrence ne s’effectue qu’au cœur du code. Le parallélisme est une propriété des threads alors que la concurrence est une propriété du code (K. Cox-Buday). Ainsi une goroutine peut NE PAS fonctionner en parallèle ! - Pourquoi mettre sous silence les Runes, les iota (si utiles dans son projet de pendu), constante,…  ? Apparemment il en parle dans sa version mise à jour mais pas ici. - Pourquoi vaguement parler d’une chose qu’il faut bien connaître une bonne fois pour toute : les valeurs-zéro ? Chaque type possède une valeur zéro - Enfin, les codes développés dans les projets sont inutilement complexes, parfois bancals. En conclusion, ce cours même s’il se veut poser les bases du langage, il n’est que trop superficiel (apparemment la version Udemy est bien plus complète et à jour) : il conviendra de se référer à la documentation du langage, aller sur les sites de vidéo en ligne ou des blogs pour récupérer des infos d’une plus grande fraîcheur (notamment Func for Fun de F. Campoy, une mine pour bien progresser mais aussi lire le blog de Dave Cheney), lire Go Programming Language (bible absolu du langage), Concurrency in Go (autre référence absolue pour la programmation concurrentielle avec Go). Enfin si vous souhaitez apprendre la programmation web avec GO, passez votre chemin, c’est bien trop léger (il faudra investir du côté de Jon Calhoun) ! Donc à l’issue de ce cours, il vous faudra apprendre les VRAIES bonnes pratiques du langage par vous-même.
Il y a 6 mois
Patrice M.
Excellent ! Expert pédagogue. Fil de la formation intelligemment fait on se prend au jeu.
Il y a 1 an
jean louis M.
Excellent ! Oui
Il y a 6 mois
Din K.

Les élèves ayant suivi ce cours Langages de programmation ont également suivi

VOIR TOUT

Autres thématiques Pro qui pourraient vous intéresser

VOIR TOUT