Go – Bases, culture et pédagogie

Logo officiel de Go, par Renée French

Quelques raccourcis :

Quelques lectures « essentielles » sur le langage Go.

Apprendre Go

Quelques pistes pour apprendre Go :

Go expliqué aux programmeurs d'autres cultures :

Histoires de vitesse d'exécution qu'on raconte sur Go, relatées par Jason Moiron en 2013 : http://jmoiron.net/blog/go-performance-tales/

Idées et opinions

Réflexions sur le langage :

Technique

Divers sujets techniques à propos du langage Go.

Saines pratiques de programmation avec Go :

Go est un langage facile à compiler, la grammaire étant pensée pour faciliter le travail des compilateurs, mais les binaires de Go tendent à être massifs. En 2016, Filippo Valsorda propose un truc pour réduire drastiquement leur taille : https://blog.filippo.io/shrink-your-go-binaries-with-this-one-weird-trick/

Utiliser Go pour :

Chaînes de caractères

Comprendre et manipuler les chaînes de caractères avec Go.

Gestion des erreurs

L'un des aspects sur la base desquels Go se distingue d'autres langages contemporains est sa gestion des erreurs. En effet, plutôt que de lever des exceptions, Go permet de retourner plusieurs valeurs d'une même fonction, et une fonction Go idiomatique retournera souvent un résultat et un code d'erreur.

Les goroutines

Ce qui tient lieu de thread (de microthread, en fait) avec Go est une goroutine. Une goroutine est une fonction lancée avec l'instruction go, et s'exécute concurremment avec la fonction l'ayant lancée.

Pour un exemple simple utilisant des goroutines, voir ../Client-Serveur/TiPointsGo.html

Quelques textes d'autres sources :

Interfaces

Les interfaces avec Go sont un concept du langage.

Structures de données

Les itérateurs avec Go, par Ewen Cheslack-Postava en 2013 : http://ewencp.org/blog/golang-iterators/

Les range et les slice :

En 2016, Eli Bendersky discute des tableaux de suffixes (pour faciliter la recherche de sous-chaînes dans une chaîne de caractères) dans la bibliothèque standard de Go : http://eli.thegreenplace.net/2016/suffix-arrays-in-the-go-standard-library/

Structures de contrôle

Texte de 2016 par Elliot Chance, expliquant en quoi Go rend la structure de contrôle switch pertinente : http://elliot.land/making-switch-cool-again

Tests

Explications d'Elliot Chance en 2016 sur le fonctionnement des tests standardisés avec Go :

Entrées/ sorties

Généricité

De prime abord, Go ne supporte pas la généricité, et c'est un aspect qui lui a attiré des critiques, mais des travaux sont en cours pour changer cet état de fait :

Cas vécus

Plusieurs gens et plusieurs entreprises ont écrit pour décrire leur expérience, souvent positive, avec Go. Quelques cas vécus suivent.

Critiques

Nul n'est parfait.


Valid XHTML 1.0 Transitional

CSS Valide !