
Go je relativno mlad, ali popularan programski jezik. Prema Stack Overflow, upravo je Golang zauzeo treće mesto na listi programskih jezika koje bi programeri želeli da savladaju. U ovom članku pokušaćemo da istražimo razloge popularnosti Go-a, kao i da vidimo gde se ovaj jezik koristi i zašto ga vredi učiti.
Nekaj zgodovine
Programski jezik Go je stvorila kompanija Google. U suštini, njegovo puno ime Golang dolazi od "Google language". Iako je u najavi jezik nazvan mladim, ove godine puni deset godina.
Cilj koji su imali kreatori Go-a bio je razviti jednostavan i efikasan programski jezik koji bi mogao da se koristi za kreiranje kvalitetnog softvera. Rob Pike, jedan od kreatora Go-a, izjavio je da je Go razvijen za programere kompanije koji su relativno nedavno završili školu i poznaju Java, C, C++ ili Python. Go je za njih jezik s kojim se brzo može ući u rad i na koji se brzo naviknete.
Prvobitno je bio alat unutar Google-a, ali s vremenom je izašao iz okvira korporacije i postao javno dostupna.
Prednosti jezika
Golang ima veliki broj prednosti, kako poznatih, tako i manje poznatih.
Enostavnost. U suštini, to je bio glavni cilj stvaranja jezika, i uspelo je da se postigne. Go ima dovoljno jednostavnu sintaksu (uz određena odstupanja), što omogućava brži razvoj aplikacija nego na nekim drugim jezicima. I ovde postoje dva zanimljiva momenta.
Prvo, Golang može dovoljno brzo da savlada potpuni početnik u programiranju - onaj ko ne zna nijedan jezik i samo planira da postane programer. O Go-u se može reći da je gotovo jednako jednostavan (relativno, naravno), kao PHP ili čak Pascal, ali toliko jak kao C++.
Drugo, Go može savladati već "formirani programer", onaj ko već poznaje jedan ili više jezika. Najčešće programeri uče Go nakon što su savladali Python ili PHP. Zatim neki programeri s uspehom koriste kombinaciju Python/Go ili PHP/Go.
Velika količina biblioteka. Če vam manjkajo kakšne funkcionalnosti v Go, lahko uporabite eno od mnogih knjižnic in izvedete zahtevano nalogo. Go ima še eno prednost – brez težav se povezuje s knjižnicami programskega jezika C. Obstaja celo mnenje, da so Go-knjižnice v bistvu ovitki za C-knjižnice.
Čistost kode. Prevajalnik Go omogoča ohranjanje kode "čiste". Na primer, neuporabljene spremenljivke se štejejo za napako pri prevajanju. V Go se reši večina težav s formatiranjem. To se na primer doseže s programom gofmt ob shranjevanju ali prevajanju. Formatiranje se samodejno popravi. Podrobnosti o vsem tem lahko izveste v tutorialu. .
Statistična tipizacija. Še ena prednost Go, ki zmanjša verjetnost napak razvijalca. Da, prvih nekaj dni programer, ki je navajen dinamične tipizacije, moti, da mora za vsako spremenljivko in funkcijo ter vse ostalo razglasiti tip. A kmalu postane jasno, da so tu same prednosti.
. Orodje, ki zelo olajša dokumentiranje kode. Velika prednost GoDoc-a je, da ne uporablja dodatnih jezikov, kot so JavaDoc, PHPDoc ali JSDoc. Orodje uporablja največ informacij, ki jih lahko pridobi iz dokumentirane kode.
Vzdrževanje kode. Lahko je vzdrževati prav zaradi preprostega in jedrnatega sintaktičnega oblikovanja. Vse to je dediščina Googla. Ker ima korporacija ogromno količino kode za različne programske izdelke, pa tudi desetke tisoč razvijalcev, ki vse to obravnavajo, se pojavi problem vzdrževanja. Koda mora biti razumljiva vsem, ki delajo z njo, dobro dokumentirana in jedrnata. Vse to je mogoče s Go.
Hkrati v Golangu ni razredov (so strukture, struct), ni podpore za dedovanje, kar bistveno poenostavi spreminjanje kode. Poleg tega ni izjeme, anotacij ipd.
Kaj lahko napišete v Go
Praktično vse, razen nekaterih zadev (na primer, razvoj povezan s strojnim učenjem – tukaj je bolj primeren Python z nizko raven optimizacij na C/C++ in CUDA).
Vse ostalo je mogoče pisati, še posebej to velja za spletne storitve. Poleg tega je Go primeren za razvoj aplikacij tako za končne uporabnike kot za razvoj demonov in uporabniških vmesnikov; primeren je tudi za večplatformske aplikacije in storitve.
Povpraševanje po Golangu

S časom se je jezik vse bolj uveljavil. Poleg tistih podjetij, ki so predstavljena na sliki zgoraj, Golang uporabljajo tudi Mail.ru Group, Avito, Ozon, Lamoda, BBC, Canonical in druga.
»Odločili smo se, da bomo razširili poslovanje, zanj je ključno, da gradimo povsem novo tehnološko platformo, ki bo zagotovila hitro rast produkta. Založili smo na Go zaradi njegove hitrosti in zanesljivosti, predvsem pa zaradi skupnosti programerjev, ki ga uporablja,« so leta 2018 povedali predstavniki Ozon, potem ko je podjetje sprejelo odločitev za prehod na Golang.
No, kaj pa dohodki? Plača Go-programerja je lani znašala v povprečju od 60 do 140 tisoč rubljev po »Mojem Krog«. V primerjavi z letom 2017 se je ta kazalnik povečal za 8,3%. V letu 2019 bo najverjetneje rast nadaljevala, saj so programerji Golang potrebni v mnogih podjetjih.
Kaj zdaj?
Razvoj Golanga se zagotovo ne bo ustavil. Potreba po dobrih strokovnjakih, ki obvladujejo ta jezik, bo le naraščala, tako da bo iskanje dela za specialista (za začetnike ali profesionalce) enostavno. V bistvu je ta trditev aktualna tudi zdaj, saj na trgu IT opažamo stalno pomanjkanje razvijalcev.
Go je dober tako za začetnike kot za profesionalce, ki že poznajo enega ali več programskih jezikov. Vsak programer se lahko nauči ali preuči Go.
Članek je bil pripravljen v sodelovanju z učiteljem v GeekBrains Sergejem Kručinim, za kar mu iskrena hvala!
Izvor: habr.com
