Go to jeden z nowoczesnych języków programowania, który zyskuje popularność w wielu ankietach, ponieważ programiści preferują język. Go ma łatwą w użyciu i zrozumiałą składnię, zapewniając jednocześnie najwyższą wydajność.
Możesz używać Go do tworzenia różnych aplikacji, od aplikacji internetowych po aplikacje wiersza poleceń, usługi w chmurze i sieci. Ekosystem pakietów innych firm Go obsługuje wiele innych przypadków użycia.
Go ma większość funkcji, których można oczekiwać od współczesnego języka: typy ogólne, współbieżność, wnioskowanie o typach, wyrzucanie elementów bezużytecznych i wiele innych.
Pierwsze kroki z Go
Możesz uruchomić Go w większości systemów operacyjnych. Zmierzać do stronę instalacji i pobierz preferowaną wersję Go dla swojego systemu operacyjnego.
Po pobraniu i zainstalowaniu Go możesz zacznij pisać i uruchamiać kod Go w plikach z a .Iść rozszerzenie pliku.
Przekonasz się, że Go ma większość funkcji i wiele funkcji innych języków programowania. Jeśli masz wcześniejsze doświadczenie w programowaniu, Go powinno być proste.
Zmienne w Go
Go jest dość ekspresyjne na podstawowym poziomie. Istnieją dwa sposoby deklarowania zmiennych w Go. Możesz użyć rozm słowo kluczowe do deklarowania zmiennych o różnych typach danych. Po określeniu identyfikatora musisz ustawić typ danych zmiennej.
rozm A strunowy
rozm B int
rozm c dowolny
rozm wiek strunowy = „pięć lat”
rozm wiek = 5// odpowiednik var age int = 5
fmt. Println (wiek)
Możesz użyć każdy jako typ danych, jeśli nie masz pewności co do typu danych zmiennej.
Możesz także zadeklarować stałe za pomocą konst słowa kluczowego w sposób podobny do deklarowania zmiennych.
konst wiek = „pięć lat”
Niemożliwa jest modyfikacja stałych po ich zadeklarowaniu.
Go zapewnia alternatywny sposób deklarowania zmiennych w funkcjach. Zwróć uwagę na użycie dwukropka przed znakiem równości:
funkcjagłówny() {
wiek := "pięć lat" // odpowiednik var age = "pięć lat"
}
Tryby warunkowe w Go
Go ma również warunkowe do podejmowania decyzji w programach. Możesz użyć Jeśli I w przeciwnym razie instrukcje w swoim kodzie do obsługi decyzji.
Oto przykład Jeśli instrukcja porównująca dwie liczby całkowite pod kątem równości:
rozm A int = 12
Jeśli == 12 {
fmt. Println("a równa się dwanaście")
}
Możesz tylko używać w przeciwnym razie instrukcje po określeniu an Jeśli oświadczenie i musisz określić w przeciwnym razie Blok po zamknięciu Jeśli blok:
rozm A int = 12
Jeśli == 12 {
fmt. Println("a równa się dwanaście")
} w przeciwnym razie {
fmt. Println("a nie równa się dwanaście")
}
The w przeciwnym razie blok działa tylko wtedy, gdy Jeśli instrukcja ma wartość false. Go nie udostępnia instrukcji else-if, ale możesz ich użyć przełącznik instrukcje dla złożonych instrukcji warunkowych.
Oto anatomia a przełącznik oświadczenie w Go.
wiek := 7
przełącznik wiek {
sprawa1:
fmt. Println("jeden")
sprawa2:
fmt. Println("dwa")
sprawa3:
fmt. Println("trzy")
domyślny:
fmt. Println("zero")
}
Możesz tworzyć instrukcje przełączania za pomocą przełącznik słowo kluczowe, po którym możesz określić różne przypadki za pomocą sprawa słowo kluczowe. Możesz obsłużyć domyślną sprawę za pomocą a domyślny słowo kluczowe.
Pętle for w Go
Go zapewnia pętle for dla powtarzalnych zadań iw przeciwieństwie do większości języków, w Go nie ma pętli while ani do-while.
Możesz użyć popularnej pętli for w stylu C lub zakres pętla for obsługiwana przez niektóre struktury danych.
Oto przykład użycia pętli for w stylu C w programie Go:
funkcjadrukarka() {
Do ja := 0; ja <= 3; i++ {
fmt. Println (i)
}
}
Możesz użyć wbudowanej w Go pętli zakresów dla złożonych struktur danych, takich jak plasterki, mapy i tablice. The zakres funkcja zwraca indeks i element indeksu podczas przechodzenia przez strukturę danych.
Do indeks, wartość := zakres struktura danych {
}
Tablice w Go
Tablice to jeden ze złożonych typów danych w Go. Tablice Go są podobne do tablic w stylu języka C i mają określoną długość podczas deklaracji i tworzenia instancji.
Oto jak możesz zadeklarować tablice w Go:
rozm arr [5]strunowy
arr := [7]int{0, 1, 2, 3, 4, 5, 6}
Możesz użyć indeksowania, aby uzyskać dostęp, przypisać i zaktualizować elementy w pozycji tablicy:
arr[3] = "trzy"
Powyższy kod aktualizuje lub wstawia ciąg jako czwarty wpis pliku arr zmienna tablicowa.
Plasterki w Go
Go zapewnia plasterki jako alternatywę dla tablic do obsługi danych o nieokreślonej długości. Plasterki są podobne do tablic, z tą różnicą, że można zmieniać długość plasterków.
Musisz użyć wbudowanego robić funkcja tworzenia wycinka. Przekaż typ danych wycinka i początkową długość do funkcji make.
kawałek := robić([]strunowy, 9)
plasterek[2] = "dwa"
Możesz użyć funkcji append, aby wstawić elementy do plasterków. Domyślnie dodać funkcja wstawia elementy na końcu wycinka.
plasterek = dodać(kawałek, „dziesięć”)
Operacje dołączania na plasterkach mogą być kosztowne, ponieważ Go tworzy nową tablicę przy każdej operacji dołączania.
Mapy w Go
Mapy to wbudowany asocjacyjny typ danych (para klucz-wartość) w Go. Możesz użyć robić funkcję do tworzenia mapy lub prostą deklarację, w której będziesz musiał utworzyć instancję mapy.
mapy := robić(mapa[strunowy]int) // używając funkcji make
mapy := mapa[strunowy]int{"jeden": 1, „dwa”: 2, "trzy": 3} // deklarowanie i tworzenie instancji mapy
Dostęp do wartości na mapie można uzyskać, określając klucze. Możesz także wstawić wartości do mapy, określając parę klucz-wartość.
mapy ["jeden"] = 1// wstawianie do mapy
jeden := mapy ["jeden"] // dostęp do elementu z mapy
Możesz użyć usuwać funkcja usuwania par klucz-wartość z map. The usuwać funkcja pobiera identyfikator mapy i klucz pary, którą chcesz usunąć:
usuwać(mapy, „jeden”)
Funkcje w Go
Funkcje są narzędziem do ponownego wykorzystania kodu w Go. Możesz zadeklarować funkcje za pomocą funkcja słowo kluczowe, po którym następuje identyfikator funkcji:
funkcjagłówny() {
}
Funkcje mogą przyjmować argumenty i zwracać wartości. Będziesz musiał określić typ argumentu obok identyfikatora argumentów.
funkcjadodać(X strunowy, y int)int {
powrót x + y
}
Typ zwracany należy określić przed blokiem kodu funkcji i zwrócić wartość określonego typu dla funkcji, które zwracają wartości.
Struktury w Go
Go nie jest język zorientowany obiektowo z założenia, ale możesz zaimplementować funkcje obiektowe w Go za pomocą struktur.
Struktury to zdefiniowane przez użytkownika typy służące do grupowania innych typów danych w pojedynczą jednostkę. Struktury Go mogą przechowywać wartości dowolnych typów obsługiwanych przez Go, a funkcje mogą implementować struktury.
Oto jak możesz zadeklarować strukturę w Go:
typ Gra struktura {
Nazwa strunowy
Rok int
Pauza w szkole pływak64
Gracze dowolni
Kraje mapa[strunowy]strunowy
}
The Gra struct ma pola z typami map, łańcuchów, liczb całkowitych i zmiennoprzecinkowych. Możesz tworzyć instancje struktur z wartościami domyślnymi lub przypisywać im wartości.
rozm gra mk // utworzenie instancji wartości domyślnej
// tworzenie instancji z wartościami
mko := Gra{
Nazwa: „Wartość”,
Rok: 1231,
Pauza w szkole: 1345412,
Gracze: [2]strunowy{"9", "rzeczy"},
dane: mapa[strunowy]int{"jeden": 1, „dwa”: 2, "trzy": 2},
}
Funkcje mogą implementować i uzyskiwać dostęp do typów struktur. Musisz podać parametr struct przed identyfikatorem funkcji.
funkcja(g Gra)Znajdź grę(nazwa strunowy) {
za := g. Rok // dostęp do pól struktury
rozm b = g. Kraje // dostęp do pól struktury
}
Kiedy przekazujesz strukturę do funkcji, funkcja ma dostęp do pól struktury, a funkcja staje się metodą struktury.
Go ma wiele przypadków użycia
Nauczyłeś się podstaw języka programowania Go i składni, aby zacząć pisać programy w Go.
Istnieje wiele dziedzin i aplikacji, w których można używać Go. Go jest powszechnie używany jako język po stronie serwera i zawsze możesz z nim odkrywać tworzenie aplikacji internetowych.