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