Dev48
ЯЗЫК
  • О нас
  • Услуги
  • Индустрии
  • Технологии
  • Статьи
  • Контакты
Забронировать звонок
    Главная/Статьи/Vypuschen go 127
Dev48
info@dev48.org+375 29 320-40-96WhatsApp@isky_by

© 2026 · Все права защищены.

Выпущен Go 1.27

Источник: Go•27 сентября 2026 г. в 08:30

Выпущен Go 1.27

Go 1.27 добавляет обобщенные методы, пакет encoding/json/v2, пакет uuid, более быструю аллокацию памяти, профили утечки горутин и многое другое.

Блог Go

Сегодня команда Go рада объявить о выходе Go 1.27. Вы можете найти бинарные архивы и установщики на странице загрузки.

Go 1.27 приносит важные улучшения в язык, набор инструментов, среду выполнения и стандартную библиотеку. Ниже приведены некоторые из основных нововведений.

Изменения в языке

Go 1.27 представляет три заметных обновления в спецификации языка.

Во-первых, теперь поддерживаются обобщенные методы. Например, см. math/rand/v2.Rand:

Во-вторых, ключом в литерале структуры теперь может быть любой допустимый селектор поля для типа структуры, что позволяет напрямую инициализировать поля во вложенных или внедренных структурах:

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

Улучшения инструментов

  • go fix включает в себя несколько новых модернизаторов: atomictypes, embedlit, slicesbackward и unsafefuncs.
  • go doc теперь поддерживает запросы формата package@version, такие как go doc example.com/pkg@v1.2.3.
  • go mod tidy теперь автоматически объединяет несколько блоков require в go.mod в стандартную структуру из двух блоков (прямые и косвенные зависимости).

Производительность и среда выполнения

  • Специализированная по размеру аллокация памяти снижает затраты на выделение мелких объектов (<80Б) на величину до 30%, улучшая общую производительность примерно на 1% для программ с интенсивным выделением памяти.
  • Профиль goroutineleak в runtime/pprof теперь общедоступен, что позволяет автоматически обнаруживать постоянно заблокированные горутины.

Дополнения стандартной библиотеки

  • encoding/json/v2 предоставляет высокоуровневую обработку JSON с настраиваемыми опциями и более строгими настройками по умолчанию, а также encoding/json/jsontext для низкоуровневой потоковой передачи. Существующий пакет encoding/json теперь работает на базе реализации v2 для более быстрого демаршалинга с сохранением обратной совместимости.
  • crypto/mldsa реализует постквантовую схему цифровой подписи ML-DSA (FIPS 204), интегрированную в crypto/x509 и crypto/tls.
  • uuid обеспечивает встроенную поддержку генерации и разбора UUID.
  • simd и архитектурно-зависимый simd/archsimd предоставляют экспериментальную поддержку SIMD.
  • net/http/httptest добавляет NewTestServer, предоставляя фиктивную сеть в памяти, подходящую для использования с пакетом testing/synctest.

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

В течение следующих нескольких недель в последующих записях блога будут более подробно рассмотрены некоторые темы, относящиеся к Go 1.27. Загляните позже, чтобы прочитать эти статьи.

Спасибо всем, кто внес свой вклад в этот релиз, написав код, сообщив об ошибках, опробовав экспериментальные дополнения и протестировав кандидатские версии. Как всегда, если вы заметите какие-либо проблемы, пожалуйста, создайте тикет.

Мы надеемся, что вам понравится использовать Go 1.27!

← Все статьи

О чём эта статья