👣 Go 1.27 получился одним из самых заметных релизов языка за последние годы.
Главное изменение - дженерик-методы. Теперь методы могут объявлять собственные параметры типа, поэтому многие хелперы и цепочки преобразований можно писать заметно чище. Но есть ограничение: такие методы нельзя использовать в интерфейсах.
Ещё из важного:
- новый encoding/json/v2 с более строгими правилами и потоковой обработкой JSON
- uuid появился прямо в стандартной библиотеке, включая UUID v4 и v7
- улучшен type inference для generic-функций
- мелкие аллокации до 80 байт стали дешевле
- профиль goroutineleak стал стабильным
- go fix получил новые автоматические миграции
- появились изменения в net/http, TLS и инструментах разработки
В статье разобрал не только список изменений, но и реальные примеры кода, подводные камни и чек-лист миграции продакшен-сервисов на Go 1.27.
https://uproger.com/go-1-27-chto-novogo/
Главное изменение - дженерик-методы. Теперь методы могут объявлять собственные параметры типа, поэтому многие хелперы и цепочки преобразований можно писать заметно чище. Но есть ограничение: такие методы нельзя использовать в интерфейсах.
Ещё из важного:
- новый encoding/json/v2 с более строгими правилами и потоковой обработкой JSON
- uuid появился прямо в стандартной библиотеке, включая UUID v4 и v7
- улучшен type inference для generic-функций
- мелкие аллокации до 80 байт стали дешевле
- профиль goroutineleak стал стабильным
- go fix получил новые автоматические миграции
- появились изменения в net/http, TLS и инструментах разработки
В статье разобрал не только список изменений, но и реальные примеры кода, подводные камни и чек-лист миграции продакшен-сервисов на Go 1.27.
https://uproger.com/go-1-27-chto-novogo/