Touch metoden øvelse: Programmering på Go språk

lukk og begynn å skrive

Touch metoden er betydelig i programmering. Du er mer effektiv ved å bruke hurtigskrivingsteknikker for å skrive kode i programmeringsspråket Go.

La oss lære mer om Go språk og touch metoden når du programmerer i Go.

Programmering i Go og touch metoden

Å programmere i Go og bruke touchmetoden henger naturlig sammen. Go har strenge syntaksregler og spesialtegn som kan være vanskelige å skrive raskt. En feil i en klammeparentes eller en operator gir straks en kompilasjonsfeil.

Hva kjennetegner syntaksen i Go?

Go er et kompilert språk (engelsk: compiled language) med en ren og minimalistisk stil. Koden starter alltid med en package-deklarasjon. Imports samles i blokker. Funksjoner defineres med func og avgrenses med klammeparenteser {}. Innrykk er obligatorisk - Go håndhever formattering med go fmt. Semikolon skrives ikke, men legges automatisk inn av kompilatoren.

package main

import "fmt"

func main() {
 fmt.Println("Hello, Go")
}

Tegn du må passe på

Vanlige tegn i Go er klammeparenteser {}, parenteser (), hakeparenteser [], anførselstegn ", backticks `, den korte tildelingsoperatoren := og kanalpilen <-.

Variabler og deklarasjoner

Go skiller mellom var og kort tildeling :=. Den korte varianten brukes mye og er enkel å skrive, men krever nøyaktighet.

var count int = 10
message := "typed correctly"

Kontrollstrukturer

Go har if, for og switch. Det finnes ikke while. Operatorene ==, !=, <, > og ++ må tastes helt riktig.

for i := 0; i < 5; i++ {
 if i%2 == 0 {
 fmt.Println("even")
 }
}

Funksjoner og flere returverdier

Funksjoner kan returnere flere verdier. Dette betyr at komma ofte brukes i retur-lister og tildelinger.

func divide(a, b int) (int, error) {
 if b == 0 {
 return 0, fmt.Errorf("division by zero")
 }
 return a/b, nil
}

result, err := divide(10, 2)

Slices, maps og literaler

Hakeparenteser [] og klammeparenteser {} brukes mye. Maps bruker kolon : mellom nøkkel og verdi.

nums := []int{1, 2, 3}
scores := map[string]int{"alice": 5, "bob": 7}

Structs og metoder

Typen struct grupperer data. Metoder defineres med en mottaker (receiver) og kalles med punktum ..

type User struct {
 Name string
}

func (u User) Greet() string {
 return "Hello " + u.Name
}

u := User{Name: "A"}
fmt.Println(u.Greet())

Grensesnitt

Interfaces i Go oppfylles implisitt, uten et nøkkelord som implements.

type Stringer interface {
 String() string
}

Samtidighet og kanaler

Kanalpilen <- er unik for Go. Den brukes både for å sende (ch <- value) og motta (value := <-ch).

ch := make(chan int)
go func() { ch <- 42 }()
value := <-ch

Strenger og runes

Dobbel anførsel for vanlige strenger, backticks for raw strings, og enkel anførsel for runes.

text := "normal string"
raw := `path\to\file`
r := 'a'

Innrykk og format

Go tvinger frem en enhetlig stil. Plasseringen av klammeparenteser og linjeskift er viktig. En vanlig feil er linjeskift rett etter return.

Oppsummering

De viktigste tegnene i Go er klammeparenteser {}, parenteser (), hakeparenteser [], operatoren := og kanalpilen <-. Å mestre disse gjør koding raskere og mer presist.