Bakit kailangan mong matuto ng Go

Bakit kailangan mong matuto ng Go
Pinagmulan ng larawan

Ang Go ay medyo bata ngunit sikat na programming language. Sa pamamagitan ng pagsisiyasat ng mga datos Stack Overflow, si Golang ang nakatanggap ng ikatlong puwesto sa pagraranggo ng mga programming language na gustong ma-master ng mga developer. Sa artikulong ito susubukan naming maunawaan ang mga dahilan ng katanyagan ng Go, at tingnan din kung saan ginagamit ang wikang ito at kung bakit ito ay nagkakahalaga ng pag-aaral.

Ang isang maliit na kasaysayan

Ang Go programming language ay nilikha ng Google. Sa totoo lang, ang buong pangalan nitong Golang ay derivative ng "wika ng Google". Sa kabila ng katotohanan na sa anunsyo ang wika ay tinawag na bata, sa taong ito ay nagiging sampung taong gulang.

Ang layunin ng mga tagalikha ng Go ay bumuo ng simple at mahusay na programming language na maaaring magamit upang lumikha ng mataas na kalidad na software. Sinabi ni Rob Pike, isa sa mga creator ng Go, na ang Go ay idinisenyo para sa mga programmer ng kumpanya na medyo bagong graduate at alam ang Java, C, C++ o Python. Para sa kanila, ang Go ay isang wika na mabilis mong mauunawaan at masanay.

Sa una, ito ay isang tool sa loob ng Google, ngunit sa paglipas ng panahon ay lumabas ito mula sa kaibuturan ng korporasyon at naging kaalaman ng publiko.

Mga kalamangan ng wika

Ang Golang ay may malaking bilang ng mga pakinabang, parehong kilala at hindi masyadong kilala.

Pagiging simple. Sa totoo lang, ito ang pangunahing layunin ng paglikha ng wika, at ito ay nakamit. Ang Go ay may medyo simpleng syntax (na may ilang mga pagpapalagay) kaya ang mga application ay maaaring mabuo nang mas mabilis kaysa sa ilang iba pang mga wika. At mayroong dalawang kawili-wiling punto dito.

Una, ang Golang ay maaaring matutunan nang mabilis sa pamamagitan ng isang kumpletong baguhan sa programming - isang taong hindi alam ang anumang wika at nagpaplano lamang na maging isang developer. Masasabi ng isa tungkol sa Go na ito ay halos hindi kumplikado (medyo pagsasalita), bilang PHP o kahit Pascal, ngunit kasing lakas ng C++.

Pangalawa, ang Go ay maaaring ma-master ng isang "formed programmer" na, isa na alam na ang isa o higit pang mga wika. Kadalasan, natututo ang mga developer ng Go pagkatapos ma-master ang Python o PHP. Dagdag pa, matagumpay na ginagamit ng ilang programmer ang Python/Go o PHP/Go na pares.

Isang malaking bilang ng mga aklatan. Kung may nawawala kang feature sa Go, maaari mong gamitin ang isa sa maraming library para matapos ang trabaho. May isa pang kalamangan ang Go - madali kang makihalubilo sa mga C library. Mayroong kahit isang opinyon na ang mga aklatan ng Go ay mga balot para sa mga aklatan ng C.

Kalinisan ng code. Binibigyang-daan ka ng Go compiler na panatilihing malinis ang iyong code. Halimbawa, ang mga hindi nagamit na variable ay itinuturing na error sa compilation. Lutasin ng Go ang karamihan sa mga problema sa pag-format. Ginagawa ito, halimbawa, gamit ang programang gofmt kapag nagse-save o nag-compile. Ang pag-format ay awtomatikong naitama. Maaari mong malaman ang higit pa tungkol sa lahat ng ito sa tutorial. Mabisa.

Static na pag-type. Ang isa pang bentahe ng Go ay binabawasan nito ang posibilidad na magkamali ang isang developer. Oo, sa unang dalawang araw ang isang programmer na nakasanayan sa dynamic na pag-type ay naiirita kapag kailangan niyang magdeklara ng isang uri para sa bawat variable at function, pati na rin para sa lahat ng iba pa. Ngunit pagkatapos ay nagiging malinaw na mayroong patuloy na mga pakinabang dito.

GoDoc. Isang utility na lubos na nagpapasimple sa pagdodokumento ng code. Ang malaking bentahe ng GoDoc ay hindi ito gumagamit ng mga karagdagang wika tulad ng JavaDoc, PHPDoc o JSDoc. Ginagamit ng utility ang maximum na dami ng impormasyong kinukuha nito mula sa code na nakadokumento.

Pagpapanatili ng code. Madali itong mapanatili salamat sa simple at maigsi nitong syntax. Ang lahat ng ito ay pamana ng Google. Dahil ang korporasyon ay may isang malaking halaga ng code para sa iba't ibang mga produkto ng software, pati na rin ang libu-libong mga developer na nag-aayos ng lahat ng ito, isang problema sa pagpapanatili ang lumitaw. Ang code ay dapat na maunawaan ng lahat na gumagawa nito, mahusay na dokumentado at maigsi. Lahat ng ito ay posible sa Go.

Kasabay nito, walang mga klase sa Golang (may mga istruktura, struct), walang suporta para sa mana, na lubos na nagpapadali sa pagbabago ng code. Dagdag pa, walang mga pagbubukod, anotasyon, atbp.

Ano ang maaari mong isulat sa Go?

Halos lahat, maliban sa ilang mga punto (halimbawa, mga pag-unlad na nauugnay sa pag-aaral ng makina - Python na may mababang antas ng pag-optimize sa C/C++ at CUDA ay mas angkop dito).

Lahat ng iba ay maaaring isulat, ito ay totoo lalo na para sa mga serbisyo sa web. Bilang karagdagan, ang Go ay nagkakahalaga ng pagbuo ng mga application para sa end user at para sa pagbuo ng mga daemon, UI, at angkop para sa mga cross-platform na application at serbisyo.

Demand para sa Golang

Bakit kailangan mong matuto ng Go
Sa paglipas ng panahon, ang wika ay nagiging higit na hinihiling. Bilang karagdagan sa mga kumpanyang iyon na naroroon sa larawan sa itaas, ang Mail.ru Group, Avito, Ozon, Lamoda, BBC, Canonical at iba pa ay nagtatrabaho sa Golang.

"Nagpasya kaming palakihin ang negosyo; mahalaga para sa amin na bumuo ng isang panimula na bagong teknolohikal na platform na magtitiyak ng mabilis na pag-unlad ng produkto. Umaasa kami sa Go dahil sa bilis at pagiging maaasahan nito, at higit sa lahat, ang madla ng mga programmer na gumagamit nito,” sabi ng mga kinatawan ng Ozon noong 2018, pagkatapos magdesisyon ang kumpanya na lumipat sa Golang.

Well, ano ang tungkol sa kita? Ang suweldo ng isang developer ng Go noong nakaraang taon ay may average na 60-140 thousand rubles Ayon sa "Aking Circle" Kung ikukumpara sa 2017, ang bilang na ito ay tumaas ng 8,3%. Malamang na magpatuloy ang paglago sa 2019 dahil maraming kumpanya ang nangangailangan ng mga developer ng Golang.

Ano ang susunod?

Tiyak na hindi titigil ang pag-unlad ng Golang. Ang pangangailangan para sa mga mahuhusay na espesyalista na nakakaalam ng wikang ito ay tataas lamang, kaya hindi magiging mahirap para sa isang espesyalista (baguhan o propesyonal) na makahanap ng trabaho. Sa prinsipyo, ang pahayag na ito ay may kaugnayan pa rin ngayon, dahil may patuloy na kakulangan ng mga developer sa IT market.

Ang Go ay mabuti para sa parehong mga baguhan na programmer at mga propesyonal na alam na ang isa o higit pang mga programming language. Halos anumang programmer ay maaaring matutunan ito o muling matutunan ito.

Ang artikulo ay inihanda kasama ng guro Golang course sa GeekBrains ni Sergei Kruchinin, kung saan maraming salamat sa kanya!

Pinagmulan: www.habr.com

Magdagdag ng komento