Компиляция в исполняемый файл в Go
Компилятор переводит текст программы в файл, который система запускает сама. Это не отдельная программа-посредник, а готовый исполняемый файл для того компьютера, где шла сборка.
Человек пишет исходный текст в файле, например
в main.go. Компилятор читает этот текст,
проверяет имена и записи и собирает из них
команды, понятные операционной системе. На выходе
получается файл, который можно запустить двойным
щелчком или из командной строки, как любую другую
программу.
Исходный текст при этом остается на месте. Его правят, когда программу меняют, и снова отдают компилятору. Готовый файл переносят на другой компьютер только если там та же система, для которой его собрали, или если файл собрали заново уже на том компьютере.
Если в тексте опечатка или запись противоречит правилам языка, компилятор сборку не завершает. Он показывает сообщение об ошибке, а исполняемый файл не появляется. Так программа не доходит до запуска, пока текст не исправят.
Цепочку удобно держать целиком. Человек пишет исходный текст. Компилятор проверяет текст и получает исполняемый файл. Операционная система запускает этот файл, а процессор выполняет команды, которые в него записаны.
Расскажите своими словами, что делает компилятор Go с текстом программы.
Расскажите своими словами, чем готовый
исполняемый файл отличается от исходного текста
в main.go.
Расскажите своими словами, нужна ли отдельная программа-среда, чтобы запустить уже собранный файл на том же компьютере.
Расскажите своими словами, что произойдет, если в тексте есть ошибка, которую компилятор не принимает.