Игра Яндекс Практикума
Игра Яндекс Практикума
Игра Яндекс Практикума

Язык программирования Go обновился до версии 1.9

Новости

Язык программирования Go обновился до версии 1.9. Рассказываем о наиболее значимых изменениях.

2К открытий2К показов

Google порадовал разработчиков релизом новой версии своего языка программирования. В юбилейной десятой версии серии Go 1.x достаточно изменений по сравнению с предыдущей, вышедшей полгода назад, среди которых есть две существенные доработки самого языка.

Речь идёт о появлении поддержки псевдонимов типов данных (Type Aliases), а также о возможности определения, когда именно код может сливать воедино операции с плавающей точкой. Последняя опция стала возможна из-за перехода языка на архитектурную инструкцию умножения-сложения с однократным округлением (fused multiply and add), при которой расчёт float значения x*y + z происходит без промежуточного округления x*y. При необходимости округления рекомендуется использовать float64(x*y) + z.

Большинство программ, написанных до выхода обновления, как ожидается, будут работать без проблем и в новой версии, согласно директиве совместимости Go 1. Однако их производительность увеличится благодаря улучшению встроенного сборщика мусора и оптимизации основной библиотеки. Также появилась возможность параллельной компиляции функций одного пакета, что непременно уменьшит время сборки приложения.

Основные новшества, представленные в выпуске Go 1.9:

  • добавлена возможность определения псевдонимов типов;
  • включён новый пакет math/bits, предоставляющий функции для битовых операций и манипуляции беззнаковыми целыми числами с задействованием, при возможности, специальных инструкций CPU;
  • в пакет sync добавлен новый тип Map, являющийся безопасным для одновременного доступа в многопоточных приложениях;
  • в пакет testing добавлен новый метод Helper, применяемый с объектами testing.T и testing.B. Данный метод в случае ошибки вернет номер строки кода, вызвавшего её, а не просто строку в функции, в которой произошел вызов t.Fatal;
  • реализована поддержка параллельной компиляции нескольких функций в пакете.

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

Следите за новыми постами
Следите за новыми постами по любимым темам
2К открытий2К показов