Go je jedným z moderných programovacích jazykov, ktorý získava priazeň v mnohých prieskumoch, pretože vývojári uprednostňujú jazyk. Go má ľahko použiteľnú a zrozumiteľnú syntax a zároveň poskytuje špičkový výkon.
Go môžete použiť na vytváranie rôznych aplikácií, od webových aplikácií po aplikácie príkazového riadka, cloudové služby a siete. Ekosystém balíkov tretích strán Go podporuje mnoho ďalších prípadov použitia.
Go má väčšinu funkcií, ktoré by ste v modernom jazyku očakávali: generické, súbežné, odvodzovanie typu, garbage collection a mnohé ďalšie.
Začíname s Go
Go môžete spustiť na väčšine operačných systémov. Zamierte k stránku s inštaláciami a stiahnite si preferovanú verziu Go pre váš operačný systém.
Keď si stiahnete a nainštalujete Go, môžete začnite písať a spúšťať Go kód v súboroch s a .choď rozšírenie súboru.
Zistíte, že Go má väčšinu funkcií a veľa funkcií iných programovacích jazykov. Ak máte predchádzajúce skúsenosti s programovaním, mali by ste nájsť Go priamočiary.
Premenné v Go
Go je na základnej úrovni dosť expresívne. Existujú dva spôsoby, ako môžete deklarovať premenné v Go. Môžete použiť var kľúčové slovo na deklarovanie premenných rôznych dátových typov. Po zadaní identifikátora budete musieť nastaviť typ údajov premennej.
var a reťazec
var b int
var c ľubovoľný
var Vek reťazec = "päť rokov"
var vek = 5// ekvivalent k var vek int = 5
fmt. Println (vek)
Môžeš použiť akýkoľvek ako typ údajov, ak si nie ste istí typom údajov premennej.
Môžete tiež deklarovať konštanty pomocou konšt kľúčové slovo podobným spôsobom ako pri deklarovaní premenných.
konšt vek = "päť rokov"
Konštanty po ich deklarácii nie je možné upravovať.
Go poskytuje alternatívny spôsob, ako deklarovať premenné vo funkciách. Všimnite si použitie dvojbodky pred znakom rovnosti:
funcHlavná() {
vek := "päť rokov" // ekvivalent var vek = "päť rokov"
}
Podmienky v Go
Go má aj podmienky na rozhodovanie v programoch. Môžete použiť ak a inak príkazy vo vašom kóde na spracovanie rozhodnutí.
Tu je príklad ak výrok, ktorý porovnáva dve celé čísla pre rovnosť:
var a int = 12
ak a == 12 {
fmt. Println("a sa rovná dvanástim")
}
Môžete len použiť inak výpisy po zadaní an ak vyhlásenie a musíte špecifikovať inak blok po uzávierke ak blokovať:
var a int = 12
ak a == 12 {
fmt. Println("a sa rovná dvanástim")
} inak {
fmt. Println("a sa nerovná dvanástim")
}
The inak blok beží len vtedy, keď je ak vyhlásenie sa vyhodnotí ako nepravdivé. Go neposkytuje vyhlásenia else-if, ale môžete ich použiť prepínač príkazy pre zložité podmienené príkazy.
Tu je anatómia a prepínač vyhlásenie v Go.
vek := 7
prepínač Vek {
prípad1:
fmt. Println("jeden")
prípad2:
fmt. Println("dva")
prípad3:
fmt. Println("tri")
predvolená:
fmt. Println("nula")
}
Príkazy prepínača môžete vytvoriť pomocou prepínač kľúčové slovo, po ktorom môžete zadať rôzne prípady pomocou prípad kľúčové slovo. Predvolený prípad môžete zvládnuť pomocou a predvolená kľúčové slovo.
Pre Loops in Go
Go poskytuje slučky for-loop pre opakujúce sa úlohy a na rozdiel od väčšiny jazykov v Go nie je žiadna slučka while alebo do-while.
Môžete použiť populárny C-štýl for-loop alebo rozsah for-loop, ktorý podporujú určité dátové štruktúry.
Tu je príklad použitia slučky for v štýle C v programe Go:
functlačiareň() {
pre ja:= 0; ja <= 3; i++ {
fmt. Println (i)
}
}
Vstavaný rozsah for-loop Go môžete použiť na zložené dátové štruktúry, ako sú rezy, mapy a polia. The rozsah funkcia vráti index a prvok indexu pri prechode dátovou štruktúrou.
pre index, hodnota := rozsah dátová štruktúra {
}
Polia v Go
Polia sú jedným zo zložených dátových typov v Go. Polia Go sú podobné poliam v štýle C a majú určitú dĺžku pri deklarácii a vytváraní inštancií.
Takto môžete deklarovať polia v Go:
var arr [5]reťazec
arr := [7]int{0, 1, 2, 3, 4, 5, 6}
Indexovanie môžete použiť na prístup, priradenie a aktualizáciu prvkov na pozícii poľa:
arr[3] = "tri"
Vyššie uvedený kód aktualizuje alebo vloží reťazec ako štvrtý záznam arr premenná poľa.
Slices in Go
Go poskytuje rezy ako alternatívu k poliam na prácu s údajmi neurčitej dĺžky. Rezy sú podobné poliam, až na to, že môžete zmeniť ich dĺžku.
Budete musieť použiť vstavaný urobiť funkcia na vytvorenie rezu. Zadajte dátový typ a počiatočnú dĺžku rezu do funkcie make.
plátok := urobiť([]reťazec, 9)
plátok[2] = "dva"
Na vloženie prvkov do rezov môžete použiť funkciu pripojiť. V predvolenom nastavení je priložiť funkcia vloží prvky na koniec rezu.
plátok = priložiť(plátok, "desať")
Operácie pripojenia na rezoch môže byť nákladná práca, pretože Go vytvorí nové pole pri každej operácii pripojenia.
Mapy v Go
Mapy sú vstavaný asociatívny (pár kľúč – hodnota) dátový typ v Go. Môžete použiť urobiť na vytvorenie mapy alebo jednoduchého vyhlásenia, kde budete musieť vytvoriť inštanciu mapy.
mapy := urobiť(mapa[reťazec]int) // pomocou funkcie make
mapy := mapa[reťazec]int{"jeden": 1, "dva": 2, "tri": 3} // vyhlásenie a vytvorenie inštancie mapy
K hodnotám na mape môžete pristupovať zadaním kľúčov. Hodnoty môžete do mapy vložiť aj zadaním páru kľúč – hodnota.
mapy["jeden"] = 1// vloženie do mapy
jeden := mapy["jeden"] // prístup k prvku z mapy
Môžete použiť vymazať funkcia na odstránenie párov kľúč – hodnota z máp. The vymazať funkcia prevezme identifikátor mapy a kľúč dvojice, ktorú chcete odstrániť:
vymazať(mapy, "jedna")
Funkcie v Go
Funkcie sú nástrojom na opätovné použitie kódu v Go. Funkcie môžete deklarovať pomocou func kľúčové slovo, za ktorým nasleduje identifikátor funkcie:
funcHlavná() {
}
Funkcie môžu prijímať argumenty a vracať hodnoty. Spolu s identifikátorom pre argumenty budete musieť zadať typ argumentu.
funcpridať(X reťazec, r int)int {
vrátiť x + y
}
Návratový typ zadáte pred blok kódu funkcie a vrátite hodnotu zadaného typu pre funkcie, ktoré vracajú hodnoty.
Štruktúry v Go
Prejsť nie je objektovo orientovaný jazyk podľa návrhu, ale v Go môžete implementovať objektovo orientované funkcie pomocou štruktúr.
Štruktúry sú používateľom definované typy na zoskupenie iných typov údajov do jednej entity. Štruktúry Go môžu obsahovať hodnoty všetkých typov podporovaných Go a funkcie môžu implementovať štruktúry.
Takto môžete deklarovať štruktúru v Go:
typu Hra štrukturovať {
názov reťazec
rok int
PlayTime plavák64
Hráči ľubovoľní
krajiny mapa[reťazec]reťazec
}
The Hra struct má polia s typmi mapy, reťazca, celého čísla a pohyblivej rádovej čiarky. Môžete vytvoriť inštanciu štruktúr s predvolenými hodnotami alebo im priradiť hodnoty.
var Hra mko // inštancia predvolenej hodnoty
// vytvorenie inštancie s hodnotami
mko := hra{
Názov: "Hodnota",
rok: 1231,
Čas prehrávania: 1345412,
Hráči: [2]reťazec{"9", "veci"},
údaje: mapa[reťazec]int{"jeden": 1, "dva": 2, "tri": 2},
}
Funkcie môžu implementovať a pristupovať k typom štruktúr. Pred identifikátorom funkcie budete musieť zadať parameter struct.
func(g Hra)FindGame(názov reťazec) {
a := g. rok // prístup k poliam struct
var b = g. krajiny // prístup k poliam struct
}
Keď odošlete štruktúru funkcii, funkcia má prístup k poliam štruktúry a funkcia sa stane metódou štruktúry.
Go má veľa prípadov použitia
Naučili ste sa základy programovacieho jazyka Go a syntax, aby ste mohli začať písať programy Go.
Existuje mnoho polí a aplikácií, kde môžete použiť Go. Go sa s obľubou používa ako jazyk na strane servera a vždy s ním môžete tiež skúmať vytváranie webových aplikácií.