Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

Выпущена версия Go 1.19: Улучшенные генерики, уточнения и новая модель памяти

Выпущена версия Go 1.19: Улучшенные генерики, уточнения и новая модель памяти

Язык программирования Go (Golang) компании Google выпустил свою последнюю версию, Go 1.19, в которой улучшена поддержка дженериков, представлена улучшенная модель памяти и предложен ряд других возможностей. Это обновление направлено на усовершенствование недавно добавленных дженериков, которые были впервые представлены в Go 1.18, и оптимизацию производительности дженерикового кода на 20 процентов.

Улучшения в Go 1.19

С выходом Go 1.19 2 августа развитие поддержки дженериков сосредоточено на решении тонких проблем и угловых случаев, о которых сообщает сообщество, а также на улучшении производительности. Введение дженериков в язык было долгожданной функцией, добавленной в Go 1.18, который был выпущен в марте.

Модель памяти Go была обновлена для явного определения поведения пакета sync/atomic, предоставляющего низкоуровневые примитивы атомарной памяти для реализации алгоритмов синхронизации. Формальное определение отношения happens-before было переработано для согласования с моделями памяти, используемыми в C, C++, Java, JavaScript, Rust и Swift. Это обновление не влияет на существующие программы.

В рамках обновления модели памяти в пакете sync/atomic появились новые типы, включая atomic.int64 и atomic.Pointer(T), что делает использование атомарных значений более удобным. Go 1.19 уже доступен для загрузки с сайта go.dev для Windows, macOS и Linux.

Дополнительные возможности в Go 1.19

Помимо усовершенствования дженериков и новой модели памяти, в Go 1.19 появились и другие возможности:

  • В сборщик мусора добавлено мягкое ограничение памяти, которое помогает оптимизировать программы Go, работающие в контейнерах с выделенной памятью.
  • Улучшения производительности и реализации, такие как динамическое изменение размера стека coroutine для уменьшения копирования стека, автоматическое использование дополнительных дескрипторов файлов в большинстве Unix-систем, таблицы переходов для больших операторов switch на x86-64 и ARM64, а также поддержка вызовов функций, внедренных в отладчик, на ARM64.
  • Внесено небольшое исправление для параметров типа в объявлениях методов, не влияющее на существующие программы.
  • Комментарии к документам теперь поддерживают ссылки, списки и синтаксис заголовков, что делает состав комментариев к документам более понятным, особенно для пакетов с обширными API.
  • В целях безопасности пакет os/exec больше не позволяет использовать относительные пути в поиске PATH.
  • Введено новое ограничение сборки, unix, которое выполняется, если целевая ОС работает на любой Unix-подобной системе.

По мере роста внедрения платформ no-code и low-code, таких как AppMaster, разработчикам важно быть в курсе последних достижений в популярных языках программирования, таких как Go. Интеграция Go с AppMaster может ускорить разработку бэкенд-приложений, обеспечивая повышенную масштабируемость и экономическую эффективность. В Go 1.19 внесены существенные улучшения, повышающие производительность, безопасность и удобство работы разработчиков, что укрепляет его позиции как жизненно важного инструмента для современной разработки программного обеспечения.

Похожие статьи

AppMaster на BubbleCon 2024: изучение тенденций No-Code
AppMaster на BubbleCon 2024: изучение тенденций No-Code
AppMaster принял участие в BubbleCon 2024 в Нью-Йорке, где получил новые знания, расширил связи и изучил возможности внедрения инноваций в сфере разработки без кода.
Итоги FFDC 2024: основные выводы с конференции разработчиков FlutterFlow в Нью-Йорке
Итоги FFDC 2024: основные выводы с конференции разработчиков FlutterFlow в Нью-Йорке
Конференция FFDC 2024 (Нью-Йорк) предоставила разработчикам передовые идеи в разработке приложений с FlutterFlow. Сессии под руководством экспертов, эксклюзивные обновления и обмен опытом — такое событие мы не могли пропустить!
Увольнения в сфере технологий в 2024 году: продолжающаяся волна, влияющая на инновации
Увольнения в сфере технологий в 2024 году: продолжающаяся волна, влияющая на инновации
В 2024 году, когда в 254 компаниях, включая таких гигантов, как Tesla и Amazon, будет сокращено 60 000 рабочих мест, продолжится волна увольнений в сфере технологий, которая изменит ландшафт инноваций.
Начните бесплатно
Хотите попробовать сами?

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

Воплотите свои идеи в жизнь