Kuburitswa kweGo programming mutauro 1.14

Introduced programming language release Enda 1.14, iyo iri kuvandudzwa neGoogle nekutora chikamu kwenharaunda semhinduro yakasanganiswa iyo inosanganisa kuita kwepamusoro kwemitauro yakaunganidzwa nezvakanakira zvekunyora mitauro sekureruka kwekunyora kodhi, kukurumidza kwekusimudzira uye kudzivirira kukanganisa. Project code inoparadzirwa ne pasi peBSD rezinesi.

Syntax yaGo yakavakirwa pazvinhu zvinozivikanwa zvemutauro weC nezvimwe zvinokwereta kubva mumutauro wePython. Mutauro wacho wakapfupikiswa, asi kodhi yacho iri nyore kuverenga nekunzwisisa. Go kodhi inounganidzwa mune yakamira-yega mabhinari eexecutables anomhanya natively pasina kushandisa chaiwo muchina (profiling, debugging, uye mamwe ekumhanya-mhanya ekuona dambudziko subsystems akabatanidzwa se. runtime components), iyo inokutendera iwe kuti uwane kuita kunofananidzwa neC zvirongwa.

Iyo purojekiti yakatanga kugadziridzwa neziso kune akawanda-tambo dhizaini hurongwa uye hunoshanda hunoshanda pane akawanda-epakati masisitimu, kusanganisira kupa opareta-nhanho nzira yekuronga parallel computing uye kudyidzana pakati peparallel-executed nzira. Mutauro unopawo kuchengetedzwa kwakavakirwa-mukati kubva kune-yakagoverwa ndangariro mabhuroko uye inopa kugona kushandisa muunganidzi wemarara.

chikuru zvitsvayakaunzwa muGo 1.14 kuburitswa:

  • Iyo itsva module sisitimu mu "go" murairo unonzi wakagadzirira kushandiswa zvakajairika, unogoneswa nekusarudzika, uye inokurudzirwa kutsamira manejimendi panzvimbo yeGOPATH. Iyo nyowani module system inoratidzira yakabatanidzwa vhezheni rutsigiro, mapakeji ekutakura kugona, uye yakagadziridzwa kutsamira manejimendi. Nemamodules, vagadziri havachasungirirwe kushanda mukati meGOPATH muti, vanogona kutsanangura zvakajeka kutsamira, uye kugadzira zvinodzokororwa kuvaka.
  • Added tsigiro yekumisikidza mainterface neanopindirana seti yenzira. Nzira kubva kune yakavakirwa-mukati interface inogona ikozvino kuve nemazita mamwechete uye masiginecha semitoo mune iripo nzvimbo. Nzira dzakataurwa zvakajeka dzinoramba dzakasiyana sepakutanga.
  • Kuita kweiyo "defer" kutaura kwakagadziridzwa, zvichiita kuti iite kunge inokurumidza sekudaidza basa rakamisikidzwa zvakananga, zvichibvumira kudzoreredzwa kwekuita mukodhi inobata-sensitive.
  • Asynchronous preemption ye coroutines (goroutines) inopihwa - zvishwe zvisina basa rekufona zvino zvinogona kutungamira kune scheduler deadlock kana kunonoka kutanga kwekuunganidza marara.
  • Kushanda kweiyo yekurangarira peji yekugovera sisitimu yakagadziridzwa uye iko zvino kune kushomeka kwekiyi kukakavara mukugadzirisa nehukuru hweGOMAXPROCS. Mhedzisiro yacho inoderedzwa latency uye yakawedzera throughput panguva imwe chete yakanyanyisa kugovera mabhuraki makuru endangariro.
  • Kukiya kwakagadziridzwa uye nhamba yekuchinja kwemamiriro ezvinhu yakaderedzwa kana uchimhanyisa nguva dzemukati dzinoshandiswa munguva.Pashure, nguva.Tick, net.Conn.SetDeadline mabasa.
  • Mune go command, iyo "-mod = mutengesi" mureza inogoneswa nekusarudzika kana paine dhairekitori remutengesi mumudzi, rakagadzirirwa kuendesa kunze zvinotsamira zvakasungirirwa kune mumwe mutengesi. Yakawedzera imwe yakaparadzana "-mod = mod" mureza kurodha mamodule kubva kumodule cache kwete kubva ku "mutengesi" dhairekitori. Kana iyo go.mod faira ichiverengwa-chete, iyo "-mod=readonly" mureza inoiswa nekukasira kana pasina yepamusoro "mutengesi" dhairekitori. Yakawedzerwa "-modfile=file" mureza kuti utaure imwe go.mod faira pane iri mumodule's root directory.
  • Yakawedzera iyo GOINSECURE nharaunda inoshanduka, kana yaiswa, murairo wekuenda haudi kushandiswa kweHTTPS uye skips chitupa chekutarisa paunenge uchirodha mamodule zvakananga.
  • Muumbi akawedzera β€œ-d=checkptr” mureza, wakagoneswa nekusingaperi, kuti atarise kodhi yekutevedzera mitemo yekushandisa zvisina njodzi.Pointer.
  • Pasuru itsva inosanganisirwa mukutumirwa hash/maphash neasiri-cryptographic hashi mabasa ekugadzira hashi matafura ezvekupokana byte sequence kana tambo.
  • Yakawedzera rutsigiro rwekuyedza ye64-bit RISC-V papuratifomu paLinux.
  • Yakawedzera rutsigiro rweFreeBSD pane 64-bit ARM masisitimu.

Source: opennet.ru

Voeg