Téigh eisiúint teanga cláir 1.16

Cuirtear i láthair scaoileadh na teanga cláir Go 1.16, atá á fhorbairt ag Google le rannpháirtíocht an phobail mar réiteach hibrideach a chomhcheanglaíonn ardfheidhmíocht na dteangacha tiomsaithe le buntáistí den sórt sin a bhaineann le teangacha scriptithe mar éascaíocht cód a scríobh. , luas na forbartha agus cosaint earráide. Déantar cód an tionscadail a dháileadh faoin gceadúnas BSD.

Tá comhréir Go bunaithe ar ghnéithe coitianta den teanga C le roinnt iasachtaí ón dteanga Python. Tá an teanga gonta go leor, ach is furasta an cód a léamh agus a thuiscint. Tiomsaítear cód Go i gcomhaid inrite dénártha neamhspleácha a ritheann go dúchais gan úsáid a bhaint as meaisín fíorúil (tá próifíliú, modúil dífhabhtaithe, agus fochórais braite fadhbanna ama rite eile comhtháite mar chomhpháirteanna am rite), a cheadaíonn feidhmíocht atá inchomparáide le cláir C.

Forbraítear an tionscadal ar dtús le súil ar ríomhchlárú il-snáithe agus ar oibriú éifeachtach ar chórais illárnacha, lena n-áirítear modhanna a sholáthar ar leibhéal an oibreora chun ríomhaireacht chomhthreomhar agus idirghníomhú idir modhanna comhleor-ghníomhaithe a eagrú. Soláthraíonn an teanga cosaint ionsuite freisin i gcoinne bloic chuimhne ró-leithdháilte agus soláthraíonn sé an cumas bailitheoir truflais a úsáid.

Príomhghnéithe nua a tugadh isteach in Go 1.16:

  • Cuireadh an pacáiste leabaithe leis, a sholáthraíonn uirlisí chun comhaid agus eolairí treallach a neadú isteach sa chlár. Cuirtear treoir nua "//go:embed" ar fáil chun comhaid a shonrú atá le neadú ag am tiomsaithe. Mar shampla, má shonraítear “//go:embed test.txt” sa trácht cód agus ansin an athróg “var f embed.FS” a dhearbhú, déanfar an comhad test.txt a leabú agus beidh an cumas rochtain a fháil air tríd an “ f” tuairisceoir. Ar an mbealach céanna, is féidir leat comhaid a leabú le hacmhainní nó le luachanna aonair de chineál áirithe atá riachtanach don obair, mar shampla, chun an t-athróg teaghrán “s” a fháil ón gcomhad version.txt, is féidir leat a shonrú: allmhairiú _ “embed ” //go:leabú version.txt var s teaghrán cló (í)
  • De réir réamhshocraithe, tá an córas modúil nua le tacaíocht leagan comhtháite ag teastáil anois, in ionad na bainistíochta spleáchais bunaithe ar GOPATH. Tá an t-athróg timpeallachta GO111MODULE socraithe anois go "ar aghaidh" de réir réamhshocraithe agus úsáidtear modh modúil beag beann ar chomhad go.mod a bheith i láthair san eolaire oibre nó tuismitheoir. Sa mhodh nua, ní athraíonn orduithe a thógáil mar "go build" agus "go test" inneachar go.mod agus go.sum, agus déanann an t-ordú "go install" argóintí leagan a phróiseáil ("go install example.com/[ríomhphost faoi chosaint]"). Chun an sean-iompraíocht a chur ar ais, athraigh GO111MODULE go “uathoibríoch”. Tugtar faoi deara go bhfuil 96% d’fhorbróirí tar éis aistriú chuig an gcóras modúl nua cheana féin.
  • Tá an nascóir optamaithe. I gcás tionscadal mór, tá an leagan amach anois 20-25% níos tapúla agus éilíonn sé 5-15% níos lú cuimhne.
  • Tá tacaíocht bhreise curtha ag an tiomsaitheoir le haghaidh leathnú inlíne ar fheidhmeanna le sainmhínithe giorraithe ar lúba "le haghaidh", luachanna modha agus tógálacha 'cineál-lasc'.
  • Tacaíocht bhreise do chórais Apple atá feistithe leis an sliseanna nua Apple M1 ARM. Cuireadh calafoirt netbsd/arm64 agus openbsd/mips64 leis le tacaíocht do NetBSD ar ARM 64-giotán agus OpenBSD ar chórais MIPS64. Tacaíocht bhreise do cgo agus an mód “-buildmode=pie” leis an gcalafort linux/riscv64.
  • Tá deireadh curtha leis an tacaíocht do mhodh tiomsaithe x87 (GO386=387). Tá tacaíocht do phróiseálaithe gan teagasc SSE2 ar fáil anois tríd an modh bogearraí "GO386=softfloat".

Ina theannta sin, is féidir linn a thabhairt faoi deara go bhfuil tús le tástáil ar scaoileadh béite na teanga Dart 2.12, ina bhfuil an modh sábháilte chun an luach “Null” (sábháilteacht null) a úsáid cobhsaithe, rud a chuideoidh le tuairteanna a sheachaint de bharr iarrachtaí ar athróga a úsáid. tá an luach neamhshainithe agus socraithe go “Null”. Tugann an mód le tuiscint nach féidir luachanna null a bheith ag athróga mura sanntar an luach null dóibh go sainráite. Urramaíonn an modh cineálacha athraitheacha go docht, rud a ligeann don tiomsaitheoir optimizations breise a chur i bhfeidhm. Seiceáiltear comhlíonadh cineáil ag am tiomsaithe, mar shampla, má dhéanann tú iarracht an luach “Null” a shannadh d’athróg le cineál nach dtugann staid neamhshainithe le tuiscint, mar “int”, taispeánfar earráid.

Foinse: oscailtenet.ru

Add a comment