Go 1.19 je že izšel in to so njegove novosti

Pred kratkim objavljena je bila izdaja nove različice programskega jezika «Go 1.19»., različica, ki izboljšuje prejšnjo izdajo z dodajanjem različnih izboljšav in predvsem popravkov napak.Od novosti lahko izpostavimo izboljšave pri upravljanju pomnilnika, varnostne izboljšave, med drugim.

Za tiste, ki šele začnete uporabljati Go, morate vedeti, da je to programski jezik, ki je bil razvit s sodelovanjem skupnosti kot hibridna rešitev, ki združuje visoko zmogljivost prevedenih jezikov s prednostmi, kot so skriptni jeziki, kot je npr. enostavnost pisanja kode, razvoj in zaščita pred hrošči.

Sintaksa Go temelji na običajnih elementih jezika C. z nekaterimi izposojami iz jezika Python. Jezik je precej jedrnat, vendar je koda lahko berljiva in razumljiva.

Koda Go je prevedena v ločene binarne izvršljive datoteke ki se izvajajo izvirno, brez uporabe navideznega stroja (profiliranje, odpravljanje napak in drugi podsistemi za odpravljanje težav med izvajanjem so vgrajeni kot komponente izvajalnega okolja).

Glavne novosti Go 1.19

V tej novi različici Go 1.19, ki je predstavljena, je poudarjeno, da delo je bilo opravljeno za izboljšanje podpore za funkcije in generične tipe dodana v najnovejši različici, s pomočjo katere lahko razvijalec definira in uporablja funkcije, zasnovane za delo z več vrstami hkrati, poleg tega pa je bila optimizacija delovanja nekaterih programov, ki uporabljajo generike, povečana za 20 %.

Druga sprememba, ki izstopa iz nove različice, je ta dodana podpora za povezave, sezname in preprostejšo sintakso za določitev glav v komentarjih dokumenta. Pripomoček gofmt zagotavlja oblikovanje z upoštevanjem naprednih funkcij komentarjev z dokumentacijo API-ja.

Poleg tega revidiran pomnilniški model Go za uskladitev s C, C++, Javo, JavaScript, Rust in Swift ki ne dopuščajo zaporedno skladnih atomskih vrednosti. Novi tipi, kot sta atomic.Int64 in atomic.Pointer[T], so bili uvedeni v paketu sync/atomic, da bi olajšali uporabo atomskih vrednosti.

Po drugi strani pa je omenjeno tudi to zbiralnik smeti ima zdaj možnost definiranja mehkih omejitev, ki se uveljavljajo z omejevanjem velikosti kopice in agresivnejšim vračanjem pomnilnika v sistem, kar pomeni, da ni zagotovljeno, da bo poraba v vseh pogojih v določenih mejah. Mehke omejitve so lahko uporabne za optimizacijo programov, ki se izvajajo v fiksnih pomnilniških vsebnikih.

Poudarjeno je tudi, da v sistemih Unix so dodatni deskriptorji datotek samodejno omogočeni (povečanje omejitve RLIMIT_NOFILE), za pospešitev izrazov velikih sprememb v sistemih x86-64 in ARM64 se uporabljajo preskočne tabele, ki omogočajo do 20 % hitrejšo obdelavo izrazov velikih sprememb.

V sistemih riscv64 je bilo implementirano posredovanje funkcijskih argumentov prek registrov CPU, kar je omogočilo približno 10-odstotno povečanje zmogljivosti.

Od ostalih sprememb ki izstopajo iz te nove različice:

  • Izvedene so bile številne optimizacije delovanja.
  • Dodana podpora za dinamično nastavitev velikosti sklada rutine za zmanjšanje velikosti kopiranih podatkov
  • Dodana eksperimentalna podpora za okolja Linux v sistemih s procesorji Loongson, ki temeljijo na 64-bitni arhitekturi LoongArch (GOARCH=loong64).
  • Spreminjanje modela pomnilnika ni vplivalo na združljivost s predhodno napisano kodo.
  • Dodana je nova omejitev gradnje »unix«, ki jo je mogoče uporabiti v vrsticah »go:build« za filtriranje sistemov, podobnih Unixu (aix, android, darwin, dragonfly, freebsd, hurd, illumos, ios, linux, netbsd, openbsd, solaris ).
  • Za izboljšanje varnosti modul os/exec zdaj ignorira relativne poti pri razširitvi spremenljivke okolja PATH (na primer, pri določanju poti do izvršljive datoteke trenutni imenik ni več preverjen).

Nazadnje, če vas zanima več o tej novi izdaji, lahko preverite podrobnosti na naslednjo povezavo.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.