Installez l'environnement de développement de langage go sous ubuntu

alentours

VirtualBox
Ubuntu 18.04

Installer Golang

Utilisez l'outil de gestion des packages système pour installer golang. L'avantage est que même s'il ne s'agit pas de la dernière version, cela n'affectera pas l'utilisation normale.

$ sudo apt-get install golang

Une fois l'installation terminée, utilisez la commande go version pour afficher la version

$ go version

Insérer une image ici

Créer un espace de travail

Créer un espace de travail

Le code Go doit être placé dans l'espace de travail. C'est en fait un répertoire, qui contient trois sous-répertoires:

  • Le répertoire src contient les fichiers source Go, qui sont organisés en packages (chaque répertoire correspond à un package),
  • Le répertoire pkg contient des objets package,
  • le répertoire bin contient des commandes exécutables

Utilisez la commande mkdir pour créer un espace de travail

$ mkdir $HOME/go

Configurer la variable d'environnement GOPATH

La variable d'environnement GOPATH indique l'emplacement de votre espace de travail (notez que cet emplacement ne peut pas être le même que votre répertoire d'installation go)

$ export GOPATH=$HOME/go

Ajoutez le sous-répertoire bin de cet espace de travail à votre PATH

$ export PATH=$PATH:$GOPATH/bin

Puis effectuez la configuration

$ source $HOME/.profile

Une fois la configuration réussie, vous pouvez utiliser go env pour vérifier la configuration

$ go env

Insérez la description de l'image ici

Créer le chemin du package

Créez un dossier dans l'espace de travail pour stocker vos fichiers source

$ mkdir -p $GOPATH/src/github.com/user

Créez Hello World!

Sélectionnez d'abord le chemin du package, puis créez le fichier dans le dossier correspondant

$ mkdir $GOPATH/src/github.com/user/hello

Créez un fichier
hello.go hello.go dans le répertoire hello

package main

import "fmt"

func main() {
	fmt.Printf("Hello World!\n")
}

Entrez ensuite dans le répertoire hello pour exécuter le fichier

$ go run hello.go

Insérez la description de l'image ici

Installer les outils et plugins nécessaires

Installer git

$ sudo apt-get install git

Télécharger le code source

# 创建文件夹(该命令要加-p,因为文件目录还不存在)
$ mkdir -p $GOPATH/src/golang.org/x/
# 下载源码
$ go get -d github.com/golang/tools
# copy 
$ cp $GOPATH/src/github.com/golang/tools $GOPATH/src/golang.org/x/ -rf

Kit d'installation

$ go install golang.org/x/tools/go/buildutil

Installez et exécutez le programme hello

$ go install github.com/user/hello

Cette commande créera un fichier binaire exécutable nommé hello, l'installera sous le fichier bin de l'espace de travail et construira une commande hello.
Insérez la description de l'image ici
Remarque: lorsque vous modifiez votre fichier, vous devez reconstruire votre programme, sinon il sera exécutable Le binaire est toujours le fichier précédent et le résultat de l'exécution du fichier ne changera pas

Installer go tour

$ go get github.com/Go-zh/tour/gotour
$ gotour

Insérez la description de l'image ici

Mon premier package et test

Votre première bibliothèque


Créez votre propre bibliothèque et laissez le programme hello l'utiliser. Sélectionnez le chemin du package et créez un répertoire

$ mkdir $GOPATH/src/github.com/user/stringutil

Créer un fichier reverse.go dans le répertoire

// stringutil 包含有用于处理字符串的工具函数。
package stringutil

// Reverse 将其实参字符串以符文为单位左右反转。
func Reverse(s string) string {
	r := []rune(s)
	for i, j := 0, len(r)-1; i < len(r)/2; i, j = i+1, j-1 {
		r[i], r[j] = r[j], r[i]
	}
	return string(r)
}

Construisez le fichier avec la commande go build

$ go build github.com/user/stringutil

Modifiez le programme Hello précédent et utilisez la bibliothèque que vous venez de créer

package main

import (
	"fmt"

	"github.com/user/stringutil"
)

func main() {
	fmt.Printf(stringutil.Reverse("!oG ,olleH"))
}

Réinstaller le fichier Hello avec go install

$ go install github.com/user/hello

Insérez la description de l'image ici

tester

Go dispose d'un cadre de test léger, qui comprend la commande go test et le package de test.

Vous pouvez écrire un test en créant un fichier dont le nom se termine par _test.go et contient des fonctions nommées TestXXX et signées func (t * testing.T). Le framework de test exécutera chacune de ces fonctions; si la fonction appelle une fonction qui indique un échec telle que t.Error ou t.Fail, le test indique un échec.

Nous pouvons ajouter des tests pour stringutil en créant le fichier $ GOPATH / src / github.com / user / stringutil / reverse_test.go

package stringutil

import "testing"

func TestReverse(t *testing.T) {
	cases := []struct {
		in, want string
	}{
		{"Hello, world", "dlrow ,olleH"},
		{"Hello, 世界", "界世 ,olleH"},
		{"", ""},
	}
	for _, c := range cases {
		got := Reverse(c.in)
		if got != c.want {
			t.Errorf("Reverse(%q) == %q, want %q", c.in, got, c.want)
		}
	}
}

Utilisez go test pour tester

$ go test github.com/user/stringutil

Insérez la description de l'image ici

Résumé du problème

1. Faites attention à l'exactitude du chemin lors de la création de l'espace de travail et des fichiers de répertoire. Si le chemin n'existe pas lors de la création du fichier, ajoutez le paramètre -p
. 2. Chaque fois que vous modifiez le programme, vous devez réinstaller l'instruction temporaire pour mettre à jour l'instruction temporaire. Sinon, exécutez toujours le fichier exécutable précédent

Je suppose que tu aimes

Origine blog.csdn.net/weixin_43980838/article/details/108694987
conseillé
Classement