====== Présentation de Go ====== {{https://upload.wikimedia.org/wikipedia/commons/thumb/2/23/Golang.png/220px-Golang.png}} [[https://fr.wikipedia.org/wiki/Go_(langage)|Extrait de la fiche Wikipedia]] > **Go** est un langage de programmation et [concurrent](https://fr.wikipedia.org/wiki/Programmation_concurrente) inspiré de [C](https://fr.wikipedia.org/wiki/C_(langage)) et [Pascal](https://fr.wikipedia.org/wiki/Pascal_(langage)). Ce langage a été développé par Google à partir d'un concept initial de [Robert Griesemer](https://fr.wikipedia.org/w/index.php?title=Robert_Griesemer&action=edit&redlink=1), [Rob Pike](https://fr.wikipedia.org/wiki/Rob_Pike) et [Ken Thompson](https://fr.wikipedia.org/wiki/Ken_Thompson). Go possède deux implémentations, la première utilise **gc**, le compilateur Go et la seconde utilise **gccgo**, « frontend » GCC écrit en C++. Go est écrit en C en utilisant yacc et GNU Bison pour l'analyse syntaxique jusqu'à la version 1.4, et en Go lui-même pour les versions suivantes (1.5). > > Un objectif de Go est donné par Rob Pike, l'un de ses trois créateurs, qui dit à propos des développeurs inexpérimentés : > > « Ils ne sont pas capables de comprendre un langage brillant, mais nous voulons les amener à réaliser de bons programmes. Ainsi, le langage que nous leur donnons doit être *facile à comprendre* et *facile à adopter* » Le Go a donc pour objectif de refaire le C en plus simple, plus accessible, plus moderne. ![Classement](classement.png) Ce classement montre les langages ayant la plus forte croissance sur Github (date un peu), il s'agit donc de jeunes langages. *Ne me demandez pas ce que signifie MAU :-)* Go est donc un langage à la mode. ===== Environnement ===== Comme pour tous les langages de programmation, le fichier programme est un un simple fichier texte. Il Comme Go est compilé, il faut installer un compilateur pour compiler le programme et produire un fichier exécutable. Vous trouverez tous les éléments utiles sur le [[https://golang.org/|site officiel de Go]]. Comme il ne s'agit que d'un aperçu, on se contente d'un environnement en ligne, [[https://play.golang.org/|The Go playground]] permettant de tout faire dans une page web ou, mieux, utiliser [[https://replit.com|replit]].