Nowa wersja Go 1.14 jest już dostępna i to są jej nowości

Go

Zespół GO ujawnił ogłoszenie o wydaniu Go 1.14, nowa wersja otwartego języka programowania opracowanego przez Google. Zgodnie z obietnicą ta wersja nie przekroczyła miesiąca lutego i Go Team nie przestawało dziękować wszystkim, którzy byli na tyle uprzejmi, aby wnieść swój wkład do projektu tej wersji, albo poprzez komentarze przeznaczone w tym celu, a także dla tych, którzy uczestniczyli w beta teście lub poprzez wydawanie kodów, zgłaszanie błędów i przesyłanie komentarzy.

Do tej pory Zespół GO dołożył wszelkich starań, aby utrzymać wyzwanie rozpoczęte przez Roba Pike'a, jeden z trzech twórców Golang, który Chciałem, aby ten język ułatwił i przyspieszył programowanie na dużą skalę. Ponieważ składnia Go jest oparta na znanych elementach języka C z indywidualnymi zapożyczeniami z języka Python. Język jest wystarczająco zwięzły, ale kod jest łatwy do odczytania i zrozumienia.

Kod Go jest kompilowany w oddzielnych binarnych plikach wykonywalnych które działają natywnie bez użycia maszyny wirtualnej (profile, moduły debugowania i inne podsystemy rozwiązywania problemów są zintegrowane w czasie wykonywania jako komponenty środowiska wykonawczego), które umożliwia działanie porównywalne z C.

Projekt został początkowo opracowany z myślą o programowaniu wielowątkowym i wydajnej pracy w systemach wielordzeniowych, zapewniając nawet środki wdrożone na poziomie operatora do organizowania obliczeń równoległych i interakcji między metodami równoległymi.

Język zapewnia również wbudowaną ochronę przed przydzielonymi obszarami przepełnienia bloków pamięci i zapewnia możliwość korzystania z modułu odśmiecania pamięci.

Główne nowe funkcje Go 1.14

Główna zmiana w tej nowej wersji dotyczy nowy system modułów w poleceniu go do powszechnego użytku, jest domyślnie włączone i jest zalecane do zarządzania zależnościami zamiast GOPATH.

Nowy system modułów ma wbudowaną kompatybilność wersji, narzędzia do dostarczania paczek i ulepszony system zarządzania zależnościami. Za pomocą modułów programiści nie są już zobowiązani do pracy w drzewie GOPATH, mogą jawnie definiować zależności oparte na wersji i tworzyć powtarzalne zestawy.

Ponadto, wątki nie będą już musiały wisieć w nieskończoność, jak w powyższym przypadku z pętlą bez wywoływania funkcji, ponieważ Go Scheduler sprawdza pewien możliwy czas wykonania bieżącej procedury podczas wywołań funkcji przed usunięciem jej z wątku do otwartej przestrzeni i umożliwia wykonanie nowe procedury. Będzie to miało wpływ na mniejsze opóźnienia w Go 1.14.

Kolejna zmiana to sDodano obsługę osadzania interfejsów z zestawem nakładających się metod. Metody we wbudowanym interfejsie mogą teraz mieć takie same nazwy i podpisy, jak metody w istniejących interfejsach. Jawnie zadeklarowane metody pozostają unikalne, jak poprzednio.

Z drugiej strony zwiększono wydajność wyrażenia „odrocz”, którego użycie obecnie prawie nie różni się szybkością od bezpośredniego wywołania funkcji leniwej, co pozwala na użycie leniwego początku funkcji w kodzie wrażliwym na wydajność.

Zapewniona jest również asynchroniczna preferencja wyprzedzająca- Pętle, które nie zawierają wywołań funkcji, mogą teraz prowadzić do zakleszczenia harmonogramu lub opóźnienia w rozpoczęciu czyszczenia pamięci.

Poprawiono wydajność systemu alokacji stron pamięci, który teraz ma znacznie mniej konfliktów blokad w konfiguracjach z dużymi wartościami GOMAXPROCS.

W rezultacie opóźnienia zostały zmniejszone, a wydajność wzrosła dzięki intensywnej równoległej alokacji dużych bloków pamięci.

Już nie możesz znaleźć pełniejszą listę tych nowych funkcji Clave w uwagach do wydania GO 1.14.

Ponadto ta nowa wersja będzie działać w systemie macOS 10.11 El Capitan i nadal będzie obsługiwać 32-bitowe pliki binarne na tej platformie. Może to być najnowsza wersja, która obsługuje również 32-bitowe pliki binarne na innych platformach, takich jak watchOS, iOS, iPadOS i tvOS.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.