Google выпустила Go 1, язык программирования, который был описан как «Python встречается с C++».Он обещает стабильность и простоту установки.
Google описал Go как сочетание производительности и безопасности скомпилированного языка, такого как C++, со скоростью динамического языка, такого как Python.
Go 1 состоит из языка и набора основных библиотек и является первым выпуском, доступным в поддерживаемых двоичных дистрибутивах. Они доступны для Linux, FreeBSD, Mac OS X и Windows. Это значительно облегчает опробование языка.
В сообщении в блоге, анонсирующем релиз, Эндрю Джеррард из команды Go говорит, что движущей мотивацией Go 1 является стабильность для его пользователей:
“Люди, которые пишут программы Go 1, могут быть уверены, что эти программы будут продолжать компилироваться и выполняться без изменений во многих средах в течение многих лет. Точно так же авторы, которые пишут книги о Go 1, могут быть уверены, что их примеры и объяснения будут полезны читателям сегодня и в будущем.”
Он добавил, что прямая совместимость является частью стабильности.
По словам Джеррарда, Go 1-это представление Go в том виде, в каком он используется сегодня, а не серьезный редизайн, и команда разработчиков сосредоточилась на устранении проблем и несоответствий и улучшении переносимости.
Некоторые изменения могут означать, что старые программы могут иметь несовместимость, но есть утилита под названием Go fix, которая может автоматизировать большую часть работы, необходимой для приведения программ в соответствие со стандартом Go 1.
Были внесены некоторые изменения, в том числе новые типы символов Юникода и ошибок. Вы можете прочитать полный список изменений по адресу golang.org.
Одно изменение, которое будет очевидно пользователям предыдущих версий, — это реструктуризация набора инструментов Go вокруг новой команды go, программы для извлечения, создания, установки и обслуживания кода Go. Это означает, что вам больше не нужно использовать Makefiles для написания кода Go.
Наряду с Go 1, Google также выпустила новую версию SDK Google App Engine. Джеррард говорит, что аналогичный процесс пересмотра и стабилизации был применен к библиотекам App Engine, обеспечивая разработчикам основу для создания программ для App Engine, которые будут работать в течение многих лет.
Реальный вопрос, конечно, заключается в том, для чего нужен Go?
Когда было объявлено, казалось разумным, что Google должен иметь собственный язык программирования, хотя бы для того, чтобы соответствовать Microsoft и Oracle. Теперь у Google есть два языка для продвижения — Dart и Go. Dart может быть скучным по сравнению с Go, но, по крайней мере, у него есть роль в жизни, то есть заменить JavaScript.
Стоит напомнить себе, какова была заявленная мотивация для Go:
Go родился из-за разочарования в существующих языках и средах для системного программирования. Программирование стало слишком сложным, и отчасти в этом был виноват выбор языков. Нужно было выбрать либо эффективную компиляцию, эффективное выполнение, либо простоту программирования; все три не были доступны на одном и том же основном языке. Программисты, которые могли бы, предпочли легкость безопасности и эффективности, перейдя на динамически типизированные языки, такие как Python и JavaScript, а не на C++ или, в меньшей степени, на Java.
Я не уверен, что буду использовать Python или JavaScript на одном дыхании с «системным программированием», конечно, какая-то путаница?
Только время покажет, есть ли у Go ниша, которую нужно занять.