Setările de tastare nu au putut fi actualizate. Reîncarcă pagina pentru a încerca din nou.
Lecție de dactilografiere: Programare în limbajul Go
precizie: —
precizie:cuvinte/min.: —
Regulile de calcul al preciziei s-au schimbat. Acest exercițiu reîncepe de la început.
Salvarea sesiunii încheiate nu a putut fi confirmată. Încercați să o salvați din nou fără a retasta textul.
Lecție de dactilografiere: Programare în limbajul Go
Dactilografia este importantă în programare. Tastarea rapidă vă ajută să scrieți mai eficient cod în limbajul de programare Go.
Programare în Go și dactilografie
Programarea în Go și dactilografia merg mână în mână. Go are reguli stricte de sintaxă și caractere speciale care pot fi greu de tastat rapid. O greșeală într-o acoladă sau un operator poate produce o eroare de compilare.
Ce este caracteristic pentru sintaxa Go?
Go este un limbaj compilat engl.: compiled language cu un stil curat și minimalist. Codul începe întotdeauna cu o declarație package. Importurile pot fi declarate separat sau grupate în blocuri. Funcțiile se declară cu func și folosesc acolade {}. Indentarea nu delimitează blocurile în Go; go fmt aplică un format standard. Semnele punct și virgulă sunt de obicei omise din codul sursă, iar compilatorul le inserează la sfârșitul liniilor după reguli precise.
package main
import "fmt"
func main() {
fmt.Println("Hello, Go")
}
Caractere importante
În codul Go apar frecvent acolade {}, paranteze rotunde (), paranteze pătrate [], ghilimele ", backticks `, operatorul de declarare scurtă := și săgeata canalului <-.
Variabile și declarații
Go face diferența între declarația cu var și declararea scurtă :=. Acest operator combină două simboluri și apare constant în cod.
var count int = 10
message := "typed correctly"
Structuri de control
Go folosește if, for și switch. Nu există while. Operatorii de comparație ==, !=, <, > și operatorul ++ trebuie tastați exact.
for i := 0; i < 5; i++ {
if i%2 == 0 {
fmt.Println("even")
}
}
Funcții și multiple valori returnate
Funcțiile pot returna mai multe valori. Acest lucru implică folosirea frecventă a virgulelor în liste de returnare și în atribuiri.
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 și literali compuși
Parantezele pătrate [] și acoladele {} apar mereu. Map-urile folosesc două puncte : între cheie și valoare.
nums := []int{1, 2, 3}
scores := map[string]int{"alice": 5, "bob": 7}
Structuri și metode
Tipul struct grupează date. Metodele au un receiver și se apelează cu punctul ..
type User struct {
Name string
}
func (u User) Greet() string {
return "Hello " + u.Name
}
u := User{Name: "A"}
fmt.Println(u.Greet())
Interfețe
Interfețele sunt implementate implicit, fără un cuvânt cheie precum implements.
type Stringer interface {
String() string
}
Concurență și canale
Operatorul de canal <- este caracteristic pentru Go. Este folosit atât pentru trimitere (ch <- valoare), cât și pentru recepție (valoare := <-ch).
ch := make(chan int)
go func() { ch <- 42 }()
value := <-ch
Șiruri și rune
Go folosește ghilimele duble pentru șiruri normale, backticks pentru raw strings și ghilimele simple pentru rune.
text := "normal string"
raw := `path\to\file`
r := 'a'
Indentare și formatare
gofmt aplică o formatare uniformă codului. Așezarea acoladelor și a rândurilor noi este importantă. O greșeală comună este apăsarea Enter între return și valoarea returnată.
Concluzie
Caracterele cheie în Go sunt: acolade {}, paranteze rotunde (), pătrate [], operatorul := și săgeata canalului <-. Stăpânirea lor este esențială pentru cod rapid și precis.