Sei uchifanira kudzidza Go

Sei uchifanira kudzidza Go
Image source

Go imutauro wechidiki asi une mukurumbira wekuronga. By data rekuongorora Stack Kufashukira, yaive Golang yakagamuchira nzvimbo yechitatu mukurongeka kwemitauro yekuronga iyo vagadziri vangade kugona. Muchikamu chino tichaedza kunzwisisa zvikonzero zvekuzivikanwa kweGo, uye zvakare kutarisa kuti mutauro uyu unoshandiswa kupi uye nei uchifanira kudzidza.

A bit of history

Mutauro weGo programming wakagadzirwa neGoogle. Chaizvoizvo, zita rayo rakazara Golang rinobva ku "Google mutauro". Pasinei nokuti muchiziviso mutauro wacho wainzi muduku, gore rino rinosvitsa makore gumi.

Chinangwa chevagadziri veGo chaive chekugadzira mutauro wakapfava uye unoshanda wechirongwa waigona kushandiswa kugadzira software yemhando yepamusoro. Rob Pike, mumwe wevagadziri veGo, akataura kuti Go rakagadzirirwa vagadziri vekambani avo vachangopedza kudzidza uye vanoziva Java, C, C ++ kana Python. Kwavari, Go mutauro waunogona kukurumidza kunzwisisa uye kujaira.

Pakutanga, chaive chishandiso mukati meGoogle, asi nekufamba kwenguva chakabuda kubva pakadzika kwesangano uye chikava ruzivo rweveruzhinji.

Zvakanakira mutauro

Golang ine nhamba yakakura yezvakanakira, zvese zvinozivikanwa uye zvisingazivikanwe zvakanyanya.

Simplicity. Chaizvoizvo, ichi ndicho chaiva chinangwa chikuru chekugadzira mutauro, uye chakaitwa. Go ine syntax yakapusa (nedzimwe fungidziro) saka maapplication anogona kuvandudzwa nekukurumidza kupfuura mimwe mitauro. Uye pane maviri anonakidza pfungwa pano.

Chekutanga, Golang inogona kudzidzwa nekukurumidza neanotanga akazara muchirongwa - mumwe munhu asingazive chero mutauro zvachose uye ari kungoronga kuve mugadziri. Mumwe anogona kutaura nezve Go kuti inenge isina kuoma (zvichireva kutaura), seFP kana kunyange Pascal, asi ine simba seC ++.

Chechipiri, Go inogona kuitwa neakatove "akaumbwa programmer", uyo anotoziva mumwe kana kupfuura mitauro. Kazhinji, vanogadzira vanodzidza Enda mushure mekuziva Python kana PHP. Kupfuurirazve, vamwe vanogadzira mapurogiramu vanobudirira kushandisa iyo Python/Go kana PHP/Go pair.

Nhamba huru yemaraibhurari. Kana iwe uchirasikirwa nechinhu muGo, unogona kushandisa imwe yemaraibhurari akawanda kuita kuti basa riitwe. Go ine imwe mukana - unogona nyore kutaurirana neC maraibhurari. Iko kune imwe pfungwa yekuti Go maraibhurari ndeye wrappers eC maraibhurari.

Code utsanana. Iyo Go compiler inobvumidza iwe kuti uchengete kodhi yako yakachena. Semuyenzaniso, misiyano isina kushandiswa inoonekwa sekukanganisa kwekuunganidza. Go inogadzirisa matambudziko mazhinji ekufomatidza. Izvi zvinoitwa, semuenzaniso, uchishandisa chirongwa chegofmt paunenge uchichengeta kana kugadzira. Mafomati anogadziriswa otomatiki. Iwe unogona kuwana zvakawanda nezve izvi zvese mune tutori. zvinobudirira.

Static typing. Imwe mukana weGo ndeyekuti inoderedza mukana wekuti mugadziri akanganisa. Hongu, kwemazuva mashoma ekutanga mugadziri wepurogiramu akajaira kutaipa zvine simba anoshatirwa kana achifanira kuzivisa mhando yemhando yega yega uye basa, pamwe chete nezvimwe zvese. Asi zvino zvinova pachena kuti pane zvinoramba zvichibatsira pano.

GoDoc. Chishandiso chinorerutsa zvakanyanya kunyora kodhi. Mukana wakakura weGoDoc nderekuti haishandise mimwe mitauro seJavaDoc, PHPDoc kana JSDoc. Iyo yekushandisa inoshandisa iyo yakawanda huwandu hweruzivo rwainobvisa kubva kune kodhi iri kunyorwa.

Kugadziriswa kwekodhi. Zviri nyore kuchengetedza kutenda kune yayo yakapfava uye yakapfupika syntax. Zvese izvi inhaka yeGoogle. Sezvo iyo mubatanidzwa ine huwandu hukuru hwekodhi yezvakasiyana zvigadzirwa zvesoftware, pamwe nemakumi ezviuru zvevagadziri vanozvigadzirisa zvese, dambudziko rekugadzirisa rinomuka. Iyo kodhi inofanirwa kunzwisiswa kune wese anoshanda pairi, yakanyorwa zvakanaka uye yakapfupika. Zvese izvi zvinogoneka neGo.

Panguva imwecheteyo, hapana makirasi muGolang (kune zvivakwa, struct), hapana tsigiro yenhaka, iyo inorerutsa zvakanyanya kuchinja kodhi. Uyezve, hapana kusarudzika, zvirevo, nezvimwe.

Chii chaunogona kunyora muGo?

Zvinenge zvese, kunze kwemamwe mapoinzi (semuenzaniso, budiriro ine chekuita nekudzidza kwemichina - Python ine yakaderera-level optimizations muC/C++ uye CUDA inonyanya kukodzera pano).

Zvimwe zvese zvinogona kunyorwa, izvi ndezvechokwadi kunyanya kune masevhisi ewebhu. Pamusoro pezvo, Go yakakodzera kugadzira zvikumbiro zvese zvekupedzisira mushandisi uye zvekugadzira madhimoni, UI, uye inokodzera muchinjika-chikuva application nemasevhisi.

Kudiwa kweGolang

Sei uchifanira kudzidza Go
Nokufamba kwenguva, mutauro unowedzera kudiwa. Mukuwedzera kune iyo makambani aripo mumufananidzo uri pamusoro, Mail.ru Group, Avito, Ozon, Lamoda, BBC, Canonical nevamwe vanoshanda neGolang.

"Takafunga kuyera bhizinesi; zvakakosha kuti isu tivake chikuva chitsva chetekinoroji chinova nechokwadi chekuvandudzwa kwechigadzirwa. Isu tinovimba neGo nekuda kwekumhanya kwayo uye kuvimbika, uye zvinonyanya kukosha, vateereri vevagadziri vanoishandisa, "Vamiriri veOzon vakadaro muna 2018, mushure mekunge kambani yafunga kuchinjira kuGolang.

Zvakanaka, zvakadini nemari?Muhoro weGo developer gore rakapera wakaenzana 60-140 zviuru rubles kupihwa "Denderedzwa rangu" Zvichienzaniswa ne2017, nhamba iyi yakawedzera ne8,3%. Kukura kungangoenderera mberi muna 2019 sezvo makambani mazhinji achida vagadziri veGolang.

Chii chinotevera?

Kubudirira kweGolang hakuzomira. Kudiwa kwenyanzvi dzakanaka dzinoziva mutauro uyu kuchawedzera chete, saka hazvizove zvakaoma kune nyanzvi (anotanga kana nyanzvi) kuwana basa. Muchidimbu, chirevo ichi chichiri kushanda nhasi, sezvo paine kushomeka kwevagadziri mumusika weIT.

Go yakanakira vese vanotanga mapurogiramu uye nyanzvi dzinotoziva mitauro imwe chete kana kupfuura. Anenge chero programmer anogona kuidzidza kana kuidzidza zvakare.

Nyaya yacho yakarongwa pamwe chete nomudzidzisi Golang course paGeekBrains naSergei Kruchinin, izvo zvakawanda zvinotenda kwaari!

Source: www.habr.com

Voeg