#0 Язык Go - Golang История создания, зачем был нужен - Курс golang для начинающих
Primary tabs
Forums:
История создания
Язык Go создали Кен Томпсон и Роб Пайк — соавторы кодировки UTF‑8 и разработчики нескольких операционных систем, а также Роберт Гризмер, имевший опыт работы над Java HotSpot, языком Swazall и распределёнными системами в Google.
- Первая публичная версия языка появилась в 2009 году.
- К 2024 году разработчики выпустили версию 1.23.
За время существования Go стал очень популярным и сегодня (как минимум в середине 2020-х) активно применяется компаниями разных размеров для написания бэкэндов.
Цели создания голанг-а
Go создавался с прицелом на скорость выполнения программ.
В чём проявляется эффективность Go:
1. Оптимизация работы с вычислительными ресурсами
В отличие от многих языков, разработанных в 1990‑х годах (которые ориентировались на одноядерные системы), Go эффективно задействует многопроцессорные архитектуры. Это достигается за счёт встроенного планировщика, позволяющего:
- создавать высоконагруженные сервисы;
- обрабатывать множество параллельных независимых запросов, поступающих в программу одновременно.
Дополнительные преимущества:
- Быстрая компиляция. Нет необходимости долго ждать для проверки работоспособности кода.
- Удобное управление зависимостями. Весь код хранится в едином пространстве и при сборке преобразуется в статический бинарник. Это убирает зависимость от внешних пакетов и предотвращает конфликты с другими программами.
2. Повышение продуктивности разработчика
Go упрощает процесс программирования благодаря:
- лаконичному синтаксису — программы получаются понятными и менее обременительными в плане поддержки legacy‑кода;
- жесткому стилю форматирования кода — это унифицирует внешний вид программ и делает программы более лёгкими для чтения
Для автоматизации форматирования в Go есть специальный инструмент, который можно запускать прямо из IDE (об этом поговорим далее в наших уроках).
Кроме форматирования, экосистема Go предлагает обширный набор линтеров.
Когда Go хорош, а когда не очень
Go активно используется в веб‑разработке, системах мониторинга и при создании разнообразных системных утилит. На этом языке реализованы многие популярные инструменты инфраструктуры — например: Docker, Kubernetes и Terraform.
При этом у Go есть ряд ограничений, которые стоит учитывать при выборе языка для проекта.
Поскольку в Go предусмотрен сборщик мусора, он не позволяет детально контролировать выделение и освобождение памяти.
Это делает язык неподходящим для задач, где:
- критична предсказуемость работы с памятью
- или недопустимы даже минимальные задержки — например, в системах реального времени.
Кроме того, Go не рекомендуется применять в условиях жёстких ограничений по объёму памяти.
Во встраиваемых системах и устройствах класса Internet of Things (IoT) зачастую предпочтительнее использовать языки с более низким уровнем абстракции и прямым управлением памятью.
Что дальше
С историей как-то разобрались, дальше стартуем как птицы - будем настраивать среду разработки ;)
- Log in to post comments
- 398 reads