Получить доступ

Чем Go отличается от других языков и почему его выбирают для бэкенда?

JuniorОсновы языка
Ещё спрашивают так:
  • Какие сильные и слабые стороны у Go?
Коротко

Go — компилируемый статически типизированный язык с простым синтаксисом, сборщиком мусора и встроенной конкурентностью (горутины и каналы). Компилируется в один статический бинарник, быстро собирается — удобно для сервисов, CLI и инфраструктуры (Docker, Kubernetes, Terraform написаны на Go).

  • Нет классов и наследования — структуры, методы, встраивание и неявные интерфейсы
  • Ошибки — значения, а не исключения
  • Минимализм намеренный: один способ форматирования (gofmt), мало возможностей языка

А ещё Слабые стороны: многословная обработка ошибок, дженерики появились поздно (1.18), паузы GC короче, чем у JVM, но управлять памятью тоньше нельзя

Так подсказку видит пользователь sotto на живом собеседовании — за пару секунд, пока вы думаете вслух.

Подробно

Почему для бэкенда:

  • конкурентность — горутины стоят килобайты, их можно запустить сотни тысяч; сетевой код пишется блокирующим и прямолинейным;
  • развёртывание — один бинарник без рантайма и зависимостей, образ контейнера в десятки мегабайт;
  • скорость сборки и запуска — секунды на сборку, миллисекунды на старт;
  • читаемость — мало конструкций, код в разных командах выглядит одинаково, легко входить новичкам;
  • стандартная библиотека — HTTP-сервер, JSON, криптография, тесты и профилировщик из коробки.

Чем расплачиваются:

  • if err != nil после каждого вызова;
  • нет исключений, перегрузки, наследования, тернарного оператора;
  • выразительности меньше, чем в Kotlin или Rust;
  • GC есть, поэтому для систем с жёсткими требованиями к задержкам иногда выбирают Rust или C++.

Типичные ниши: микросервисы, API-шлюзы, инфраструктурные инструменты, сетевые прокси, CLI.

Что хотят услышать

  • Основные свойства языка.
  • Почему удобен для сервисов.
  • Честные недостатки.

Что спросят дальше

Связанные вопросы

Закрытая бета

Подсказки на собеседовании — в реальном времени

sotto слышит вопрос интервьюера и показывает короткий ответ и план, как в блоке «Коротко». Оставьте контакт — пришлём доступ и промокод.

  • Промокод на 2 часа — сверх пробных 30 минут
  • Программа для Windows — скачать сразу, войти — через Яндекс ID или VK ID
  • Прямая связь с разработчиком: что улучшить — сделаем