Siideynta luuqada barnaamijka Go 1.16

Siideynta luuqadda barnaamijka Go 1.16 ayaa la soo bandhigay, kaas oo ay soo saartay Google iyada oo ka qaybqaadashada bulshadu ay tahay xal isku dhafan oo isku daraya waxqabadka sare ee luqadaha la soo ururiyey iyo faa'iidooyinka sida luqadaha qorista sida fududaanta koodka qorista , xawaaraha horumarka, iyo ilaalinta khaladaadka. Xeerka mashruuca waxa lagu qaybiyaa shatiga BSD.

Go's syntax waxay ku salaysan tahay walxaha la yaqaan ee luqadda C oo leh xoogaa amaah ah oo laga soo qaatay luqadda Python. Luqadda waa mid kooban, laakiin koodka waa sahlan tahay in la akhriyo lana fahmo. Go code waxaa lagu soo ururiyay faylal la fulin karo oo kali ah oo si toos ah u shaqeeya iyada oo aan la isticmaalin mashiinka farsamada (profiling, modules debugging, iyo nidaamyada kale ee ogaanshaha dhibka runtime waxay isku dhafan yihiin qaybaha runtime), taas oo u oggolaanaysa waxqabadka u dhigma barnaamijyada C.

Mashruucu waxaa markii hore lagu hormariyay iyadoo isha lagu hayo barnaamijyo isku xiran iyo hawlgal hufan oo lagu sameeyo nidaamyada asaasiga ah, oo ay ku jiraan bixinta habab laga hirgeliyay heerka hawlwadeenka ee abaabulka xisaabinta barbar-dhigga iyo isdhexgalka ka dhexeeya hababka barbar socda. Luqadda ayaa sidoo kale bixisa ka-hortag dhismeed ka dhan ah xad-dhaafka ah ee blocks xusuusta loo qoondeeyey oo waxay siisaa awoodda isticmaalka ururiyaha qashinka.

Tilmaamo cusub oo muhiim ah oo lagu soo bandhigay Go 1.16:

  • Waxaa lagu daray xirmada cufan, taasoo bixisa agabka lagu dhex geliyo faylalka iyo hagayaasha aan sabab lahayn barnaamijka. Dardaaran cusub "//go: embed" ayaa la bixiyay si loo qeexo faylalka la dhex gelinayo wakhtiga la ururinayo. Tusaale ahaan, ku qeexida "//go: embed test.txt" ee faallooyinka koodhka ka dibna ku dhawaaqida doorsoomaha "var f embed.FS" waxay horseedi doontaa gundhigga faylka test.txt iyo awoodda lagu galo "" f” sharaxe. Si la mid ah, waxaad ku dhejin kartaa faylasha leh kheyraad ama qiyam gaar ah oo ah nooc gaar ah oo lagama maarmaanka u ah shaqada, tusaale ahaan, si aad u hesho doorsoomayaasha xargaha "s" ee faylka version.txt, waxaad qeexi kartaa: soo dejinta _ "embed " //go: embed version.txt var s string print (-yada)
  • Sida caadiga ah, nidaamka moduleka cusub ee leh taageerada nuqulka isku dhafan ayaa hadda loo baahan yahay, beddelaya maamulka ku-tiirsanaanta ku salaysan GOPATH. Doorsoomiyaha deegaanka GO111MODULE hadda waa loo dejiyay inuu "shir" si caadi ah oo qaabka modules-ka ayaa la isticmaalayaa iyadoon loo eegin joogitaanka faylka go.mod ee hagaha shaqada ama waalidka. Habka cusub, dhis amarrada ay ka midka yihiin "go build" iyo "go test" ma beddelaan waxa ku jira go.mod iyo go.sum, iyo "go install" amarrada nooca doodaha ("go install example.com/[emailka waa la ilaaliyay]"). Si aad u soo celiso hab-dhaqankii hore, u beddel GO111MODULE una beddel β€œauto”. Waxaa la xusay in 96% horumariyayaashu ay mar hore u wareegeen nidaamka moduleka cusub.
  • Xiriiriyaha waa la hagaajiyay Mashruucyada waaweyn, qaabeynta hadda waa 20-25% dhaqso waxayna u baahan tahay 5-15% xasuus yar.
  • Isku-dubbaridiyuhu wuxuu ku daray taageerada ballaarinta khadka ee shaqooyinka oo leh qeexitaanno la soo gaabiyey "loops", qiyamka habka iyo 'nooc beddelka' dhismooyinka.
  • Taageero lagu daray nidaamyada Apple oo ku qalabaysan chip-ka cusub ee Apple M1 ARM. Waxaa lagu daray netbsd/arm64 iyo openbsd/mips64 dekedaha oo taageero u ah NetBSD 64-bit ARM iyo OpenBSD ee nidaamyada MIPS64. Taageerada lagu daray cgo iyo qaabka "-buildmode=pie" ee linux/riscv64.
  • Taageerada habka isu-ururinta x87 waa la joojiyay (GO386=387). Taageerada soo-saareyaasha aan tilmaamaha lahayn ee SSE2 ayaa hadda la heli karaa iyada oo loo marayo qaabka software "GO386=softfloat".

Intaa waxaa dheer, waxaan ogaan karnaa bilawga tijaabinta sii deynta beta ee luqadda Dart 2.12, kaas oo qaabka badbaadada leh ee isticmaalka qiimaha "Null" (nabadgelyo aan jirin) la xasiliyay, kaas oo kaa caawin doona in laga fogaado shilalka ay sababaan isku dayga lagu isticmaalo doorsoomayaasha kuwaas oo qiimuhu waa mid aan qeexnayn oo loo dhigay "Null". Habkani waxa uu tusinayaa in doorsoomayaashu aanay yeelan karin qiimayaal aan waxba ka jirin ilaa si cad loogu qoondeeyo qiimaha null. Habka ayaa si adag u ixtiraamaya noocyada doorsoomayaasha, taas oo u oggolaanaysa isku-dubariduhu inuu isticmaalo hagaajin dheeraad ah. U hoggaansanaanta nooca waxa la hubiyaa wakhtiga la ururinayo, tusaale ahaan, haddii aad isku daydo inaad ku meelayso qiimaha β€œNull” doorsoome wata nooc aan ka turjumayn xaalad aan la cayimin, sida β€œint”, khalad ayaa soo muuqan doona.

Source: opennet.ru

Add a comment