Première rédaction de cet article le 8 décembre 2009
Go, créé par Google, est surtout intéressant comme langage de programmation « système ». Il est donc concurrent de C et C++, sur un créneau où il y a relativement peu de candidats (certains, comme D, n'ont eu aucun succès). Certains commentateurs s'étaient étonné que Google crée encore un nouveau langage de programmation lors qu'il y en a déjà des milliers mais, contrairement aux langages fonctionnels, les langages « système » sont bien plus rares.
Le code de mon client whois est en whois.go
. Mon
point de départ avait été socketgo. (Un autre
programme de niveau de complexité analogue est un client pour l'entrepôt de données
de Rennes, gostar.go
.) Quelques points qui
m'ont interpellé pendant le développement du client whois :
include $(GOROOT)/src/Make.$(GOARCH)
),string
en
[]byte
, les premières étant nécessaires pour
l'affichage et les seconds servant aux entrées/sorties (j'ai créé un
Buffer
pour cela, y avait-il une meilleure solution ?),:=
) et sa mutation
ultérieure (où on doit utiliser =
),Mon deuxième programme, pour illustrer le parallélisme en Go est un serveur du protocole echo, NoNewContent. Plus perfectionné et tout aussi parallèle, un serveur de noms en Go.
J'ai aussi fait un exposé en français sur Go.
Je stocke mes liens vers des ressources Go en http://delicious.com/bortzmeyer/golang
.
Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)
Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)