Go ay isang open source, cross-platform, nagpapahayag, malayang ipinamamahagi, kasabay na basura-tinipon, at programming language na binuo sa pamamagitan ng isang koponan ng mga inhinyero sa Google. Sa Go, anumang mga developer ay magagawang upang bumuo ng matatag, maaasahan, at mahusay na mga application. Ilang interactive halimbawa ay magagamit sa homepage ng proyekto.
Maaaring maging madaling-debug gamit ang GDB
Ang code na ginawa ng mga Go programming language ay maaaring maging madaling-debug gamit ang GDB (Ang proyektong GNU Debugger) open source software. Upang makapagsimula sa Go sa iyong GNU / Linux operating system, i-download ang mga pakete na tumutugma sa iyong computer & rsquo;. S architecture, i-save ang archive sa iyong Home direktoryo, at alisan ng laman ito
Magbukas ng Terminal app, pumunta sa lokasyon ng & lsquo; bin & rsquo; folder (eg cd / home / softoware / go / bin /) at patakbuhin ang & lsquo; ./ pumunta --help & rsquo; command upang tingnan ang mga magagamit na mga pagpipilian sa command-line at ang mensahe na paggamit. Pinalawak babasahin sa kung paano makapagsimula sa Go programming language ay ibinigay din sa main website ng proyekto.
Mga pagpipilian sa linya ng command
Ang built-in na mga utos ay magbibigay-daan sa iyo upang magtala ng mga pakete at mga dependencies, sa listahan ng mga pakete, i-print ang impormasyon tungkol sa isang Go kapaligiran, upang alisin ang mga file na bagay, upang ayusin pakete, upang makabuo ng Go file sa pamamagitan ng pagproseso ng source code, upang ipunin at magpatakbo ng isang programa Go, at sa mga pagsubok na mga pakete.
Bukod pa rito, maaari kang magpatakbo ng isang tiyak na kasangkapan go, patakbuhin ang go tool gamutin ang hayop sa pakete, patakbuhin gofmt sa pinagkukunan package, sumulat ng libro at i-install ang mga pakete at dependencies, pati na rin upang i-download at i-install ng mga pakete at dependencies.
Tumatakbo sa GNU / Linux, BSD, Mac at Windows
Tulad ng nabanggit sa simula ng mga review, Go ay isang cross-platform programming language, na nangangahulugan na maaari mong gamitin ito sa anumang pamamahagi GNU / Linux, pati na rin sa BSD, Mac OS X, at Microsoft Windows operating systems. Parehong 32 at 64-bit platform ng computer ay suportado sa oras na ito
Ano ang bagong sa paglabas:.
- < li> Ang tagatala at runtime ngayon ay lubos na nakasulat sa Go (na may isang maliit assembler). C ay hindi na kasangkot sa pagpapatupad, at kaya ang C compiler na minsan ay kinakailangan para sa mga gusali ng pamamahagi ay wala na.
- Ang mga basurero ay kasabay na ngayon at nagbibigay ng higit na mas mababang beses pause sa pamamagitan ng pagpapatakbo, kapag posible, kahanay sa iba pang goroutines.
- Sa pamamagitan ng default, Pumunta programa tumakbo sa GOMAXPROCS nakatakda sa bilang ng mga core na magagamit; in bago release ito naka-default sa 1.
- Suporta para sa mga panloob na mga pakete ay ibinibigay na ngayon para sa lahat ng mga repositoryo, hindi lamang ang Go core.
- Ang utos go ngayon ay nagbibigay ng mga pang-eksperimentong suporta para sa & quot; vendoring & quot; panlabas na dependencies.
- Sinusuportahan Isang bagong utos go tool trace pinino ang pagsunod ng pagpapatupad ng programa.
- Ang isang bagong utos go doc (hiwalay sa godoc) ay na-customize para sa paggamit ng command-line.
Ano ang bagong sa bersyon 1.4.2:
- Ang bagong release ay halos pitong buwan matapos ang release ng Go 1.1 Mayo, isang mas maikling panahon kaysa sa 14 buwan sa pagitan ng 1.1 at 1.0. Inaasahan namin ang isang maihahambing na agwat sa pagitan ng mga pangunahing release sa hinaharap.
- Pumunta 1.2 nagsasama ng isang pares ng mga maliit na pagbabago sa wika, ang ilang mga pagpapabuti sa pagpapatupad ng wika at mga tool, ang ilang mga pagpapabuti ng pagganap, at maraming mga karagdagan at (pabalik na-katugma) mga pagbabago sa standard library.
- Mangyaring basahin ang mga tala ng release para sa lahat ng mga detalye, tulad ng ilang mga pagbabago ay maaaring makaapekto ang pag-uugali ng mga umiiral na (maraming surot) programs. Ano ang mga sumusunod ay ang mga highlight ng release.
- Ang isang bagong tatlong-index slice syntax nagdadagdag ng kakayahan upang tukuyin ang kakayahan pati na rin ang haba. Ito ay nagpapahintulot sa mga programmer upang pumasa sa isang slice halaga na maaaring ma-access lamang ng isang limitadong bahagi ng ang kalakip na array, isang pamamaraan na dati na kinakailangan ang paggamit ng mga hindi ligtas na mga pakete.
- Ang isang malaking bagong tampok ng tool chain ay ang mga pasilidad upang kalkulahin at ipakita ang mga resulta test coverage. Tingnan ang go test at dokumentasyon ng pabalat na kasangkapan para sa mga detalye. Mamaya na ito linggo namin i-publish ang isang artikulo na tinatalakay ang bagong tampok sa mga detalye.
- Goroutines ay pre-emptively naka-iskedyul na ngayon, sa na ang scheduler ay mahihingi paminsan-minsan sa entry sa isang function. Ito ay maaaring maiwasan busy goroutines mula sa gutom ibang goroutines sa parehong thread.
- Ang isang pagtaas sa mga default na laki ng stack goroutine ay dapat na mapabuti ang pagganap ng ilang mga programa. (Ang lumang laki ay may isang pagkahilig upang ipakilala ang mahal switching stack-segment sa mga seksyon ng pagganap-kritikal.) Sa kabilang dulo, bagong mga paghihigpit sa laki stack at ang bilang ng mga thread operating system ay dapat na maiwasan magulo mga programa mula sa pag-ubos ng lahat ng mga mapagkukunan ng isang machine . (Ang mga limitasyon ay maaaring nababagay gamit ang bagong pag-andar sa runtime / debug package.)
- Sa wakas, isa sa mga pagbabago sa standard library, makabuluhang mga pagbabago isama ang bagong pakete na pag-encode, na-index na mga argumento sa mga string Printf format, at ang ilang mga maginhawang mga pagdaragdag sa mga template pakete.
Ano ang bagong sa bersyon 1.4.1:
- Ang bagong release ay halos pitong buwan matapos ang release ng Go 1.1 Mayo, isang mas maikling panahon kaysa sa 14 buwan sa pagitan ng 1.1 at 1.0. Inaasahan namin ang isang maihahambing na agwat sa pagitan ng mga pangunahing release sa hinaharap.
- Pumunta 1.2 nagsasama ng isang pares ng mga maliit na pagbabago sa wika, ang ilang mga pagpapabuti sa pagpapatupad ng wika at mga tool, ang ilang mga pagpapabuti ng pagganap, at maraming mga karagdagan at (pabalik na-katugma) mga pagbabago sa standard library.
- Mangyaring basahin ang mga tala ng release para sa lahat ng mga detalye, tulad ng ilang mga pagbabago ay maaaring makaapekto ang pag-uugali ng mga umiiral na (maraming surot) programs. Ano ang mga sumusunod ay ang mga highlight ng release.
- Ang isang bagong tatlong-index slice syntax nagdadagdag ng kakayahan upang tukuyin ang kakayahan pati na rin ang haba. Ito ay nagpapahintulot sa mga programmer upang pumasa sa isang slice halaga na maaaring ma-access lamang ng isang limitadong bahagi ng ang kalakip na array, isang pamamaraan na dati na kinakailangan ang paggamit ng mga hindi ligtas na mga pakete.
- Ang isang malaking bagong tampok ng tool chain ay ang mga pasilidad upang kalkulahin at ipakita ang mga resulta test coverage. Tingnan ang go test at dokumentasyon ng pabalat na kasangkapan para sa mga detalye. Mamaya na ito linggo namin i-publish ang isang artikulo na tinatalakay ang bagong tampok sa mga detalye.
- Goroutines ay pre-emptively naka-iskedyul na ngayon, sa na ang scheduler ay mahihingi paminsan-minsan sa entry sa isang function. Ito ay maaaring maiwasan busy goroutines mula sa gutom ibang goroutines sa parehong thread.
- Ang isang pagtaas sa mga default na laki ng stack goroutine ay dapat na mapabuti ang pagganap ng ilang mga programa. (Ang lumang laki ay may isang pagkahilig upang ipakilala ang mahal switching stack-segment sa mga seksyon ng pagganap-kritikal.) Sa kabilang dulo, bagong mga paghihigpit sa laki stack at ang bilang ng mga thread operating system ay dapat na maiwasan magulo mga programa mula sa pag-ubos ng lahat ng mga mapagkukunan ng isang machine . (Ang mga limitasyon ay maaaring nababagay gamit ang bagong pag-andar sa runtime / debug package.)
- Sa wakas, isa sa mga pagbabago sa standard library, makabuluhang mga pagbabago isama ang bagong pakete na pag-encode, na-index na mga argumento sa mga string Printf format, at ang ilang mga maginhawang mga pagdaragdag sa mga template pakete.
Ano ang bagong sa bersyon 1.1.1:
- Sa 2011 inihayag namin ang Go runtime para sa App Engine . Simula noon, kami ay patuloy na mapabuti ang karanasan ng Go App Engine, at sa pangkalahatan ay napabuti Go suporta para sa Google Cloud Platform. Halimbawa, ang google-api-go-client ay nagbibigay ng isang interface Pumunta sa isang hanay ng mga pampublikong mga API ng Google, kabilang ang Compute Engine, Cloud Storage, BigQuery, Drive, at marami pa.
Mga Komento hindi natagpuan