Вышла новая версия Go 1.14, и это его новости

Go

Команда GO представила объявление о выпуске Go 1.14, новая версия языка программирования с открытым исходным кодом, разработанная Google. Как и было обещано, этот выпуск не превысил февраль и месяц. Команда Go не переставала благодарить всех, кто был любезен внести свой вклад к дизайну этой версии, либо посредством комментариев, предоставленных для этой цели, а также для тех, кто участвовал в бета-тестировании, либо путем выдачи кодов, сообщений об ошибках и отправки комментариев.

До сих пор, Команда GO старалась поддерживать вызов, брошенный Робом Пайком., один из трех создателей Голанга, которые Я хотел, чтобы этот язык упростил и ускорил крупномасштабное программирование. Синтаксис Go основан на знакомых элементах языка C с отдельными заимствованиями из языка Python. Язык достаточно лаконичный, но код легко читать и понимать.

Код Go компилируется в отдельные двоичные исполняемые файлы которые работают изначально без использования виртуальной машины (профили, отладочные модули и другие подсистемы устранения неполадок интегрируются во время выполнения как компоненты среды выполнения), которые обеспечивает производительность, сопоставимую с C.

Первоначально проект разрабатывался с учетом многопоточного программирования и эффективной работы в многоядерных системах, даже предоставляя реализованные на уровне оператора средства для организации параллельных вычислений и взаимодействия между параллельными методами.

Язык также обеспечивает встроенную защиту от областей переполнения выделенных блоков памяти и предоставляет возможность использовать сборщик мусора.

Go 1.14 основные новости

Основное изменение в этой новой версии касается новая модульная система в команде go для широкого использования, он включен по умолчанию и рекомендуется для управления зависимостями вместо GOPATH.

Новая модульная система имеет встроенную совместимость версий, инструменты доставки пакетов и улучшенная система управления зависимостями. С помощью модулей, разработчики больше не обязаны работать в дереве GOPATH, они могут явно определять зависимости на основе версий и создавать повторяющиеся сборки.

Кроме того, потоки больше не придется вешать бесконечно, как в случае выше с циклом без вызова функции, поскольку Go Scheduler проверяет определенное возможное время выполнения текущей подпрограммы во время вызовов функций, прежде чем удалять ее из потока, чтобы освободить место и разрешить выполнение новых подпрограмм. Это повлияет на снижение задержки в Go 1.14.

Еще одно изменение - sДобавлена ​​поддержка встраивания интерфейсов с набором перекрывающихся методов. Методы встроенного интерфейса теперь могут иметь те же имена и подписи, что и методы существующих интерфейсов. Явно объявленные методы по-прежнему остаются уникальными.

Более того увеличена производительность выражения "отложить", использование которого теперь практически не отличается по скорости от прямого вызова ленивой функции, что позволяет использовать ленивый запуск функции в коде, чувствительном к производительности.

Также предоставляется асинхронное приоритетное предпочтение- Циклы, не содержащие вызовов функций, теперь могут приводить к тупиковой ситуации для планировщика или задержке начала сборки мусора.

Повышена эффективность системы выделения страниц памяти., который теперь имеет значительно меньше конфликтов блокировок в конфигурациях с большими значениями GOMAXPROCS.

В результате задержки были уменьшены, а производительность увеличена за счет интенсивного параллельного распределения больших блоков памяти.

Больше не надо вы можете найти более полный список этих новых функций ключ в примечаниях к выпуску GO 1.14.

Кроме того, эта новая версия будет работать на macOS 10.11 El Capitan и по-прежнему будет поддерживать 32-разрядные двоичные файлы на этой платформе. Это может быть последняя версия, которая также поддерживает 32-разрядные двоичные файлы на других платформах, таких как watchOS, iOS, iPadOS и tvOS.


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.