
Если уменьшение размера бинарников Go на 6% - это то, в чем вы отчаянно нуждаетесь, то эта статья для вас. (Я проводил этот эксперимент в рамках помощи Tailscale. Следует отметить, что я инвестор.) Если же вас не сильно заботит размер двоичных файлов, что ж, может быть, вам хотя бы будет интересно почитать это для развлечения.
Чтобы получить примерные цифры для этой статьи, я взял первый попавшийся файл из моего GOPATH. Все конкретные цифры в этой статье относятся к github.com/mvdan/sh/cmd/shfmt. После нескольких экспериментов, они кажутся мне довольно репрезентативными.
В качестве базового комита я использую коммит 9d812cfa5c тулчейна Go. Это ветка master по состоянию на 29 апреля 2020 г.; вероятно, он будет схож с версией Go 1.15beta1. Я использую его, а не Go 1.14, потому что он включает в себя несколько сокращений размера бинарников, в том числе одно конкретное, которое вам обязательно понадобится, если для вас важен размер.