Ответ
go run компилирует и сразу выполняет код, не сохраняя бинарник. Удобно для быстрого тестирования.
Пример:
go run main.go
go build компилирует код в исполняемый файл, который можно запустить отдельно.
Пример:
go build -o app main.go
./app
Ключевые отличия:
run- временное выполнение,build- создание бинарникаrunудобен для разработки,build- для продакшенаrunне требует ручного запуска бинарника
Для долгоживущих процессов лучше использовать build, так как run перекомпилирует код при каждом запуске.